summaryrefslogtreecommitdiff
path: root/Function-Refs/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'Function-Refs/README.md')
-rw-r--r--Function-Refs/README.md21
1 files changed, 19 insertions, 2 deletions
diff --git a/Function-Refs/README.md b/Function-Refs/README.md
index 09a6715..1b2dd5b 100644
--- a/Function-Refs/README.md
+++ b/Function-Refs/README.md
@@ -6,14 +6,31 @@ The example in this section is a derivative of the function reference summary in
## Source
-###
+### funcrefs.b:18,34
+The variable `fp` is a name whose type is a reference to a function with a given argument and return value scheme. A function which fulfills this scheme can be used to set the reference, in this case the `cmp()` function is referenced by `fp`.
+### funcrefs.b:36,46
-## Demo
+The `sort()` function takes a function reference as an argument, using it as a comparator. In this case `cmp()` and `rcmp()` are passed as a function reference argument.
+
+### funcrefs.b:48,53
+The `choose()` function returns a reference to a function, being called in this case to return a given comparator with the comparator being called in-line.
+
+## Demo
+ ; limbo funcrefs.b
+ ; funcrefs
+ Matched smiley!
+ Did not match duck
+ [ d b c a]
+ [ a b c d]
+ [ d c b a]
+ quack ≥ quack
+ ;
## Exercises
- Change the value of `c` to 1, what happens?
+- Write a function which returns a function which returns a function.