![[ ]](../../doc/dir.png) |
.. |
Index to Examples. |
![[ ]](../../doc/text.png) |
8/01 |
Compile global first-order functions into stack machine code. Function as parameter and result value. |
![[ ]](../../doc/text.png) |
8/02 |
Euclid's algorithm, function as a variable value. |
![[ ]](../../doc/text.png) |
8/03 |
Mutually recursive functions, function as a variable value. |
![[ ]](../../doc/text.png) |
8/04 |
Block scopes, now declare before use required. |
![[ ]](../../doc/text.png) |
8/05 |
Shadowing, now declare before use required. |
![[ ]](../../doc/text.png) |
8/06 |
Semantic errors in functions. |
![[ ]](../../doc/text.png) |
8/07 |
(Flawed) function composition. |
![[ ]](../../doc/text.png) |
8/08 |
Compile nested first-order functions into stack machine code. Function value == address + display. As parameter only. |
![[ ]](../../doc/text.png) |
8/09 |
Nested function with a closure requires display. |
![[ ]](../../doc/text.png) |
8/10 |
Nested function as parameter for deeper nester function. |
![[ ]](../../doc/text.png) |
8/11 |
Euclid's algorithm, avoids non-positive arguments. |
![[ ]](../../doc/text.png) |
8/12 |
Deep nesting. |
![[ ]](../../doc/text.png) |
8/13 |
Puzzle. |
![[ ]](../../doc/text.png) |
8/14 |
Compile nested first-order functions into stack machine code. Memory management with garbage collection. |
![[ ]](../../doc/text.png) |
8/15 |
Euclid's algorithm, demonstrates a closure. |
![[ ]](../../doc/text.png) |
8/16 |
Deeper closure. |
![[ ]](../../doc/text.png) |
8/17 |
Nesting puzzle. |
![[ ]](../../doc/text.png) |
8/18 |
Currying pattern. |
![[ ]](../../doc/text.png) |
8/19 |
Evaluating an arithmetic expression. |
![[ ]](../../doc/text.png) |
8/20 |
Evaluating an arithmetic expression. Currying and cascaded function calls. |
![[ ]](../../doc/text.png) |
8/21 |
Evaluating an arithmetic expression. Replicates the function composition used in example 6/07. |