# MATH demonstrate existence of memory
[hear] (define forty-something 42);
[hear] (= 42 (forty-something));
# now introduce a function
[hear] (assign square (? x / * (x) (x)) /
= 0 (square 0));
[hear] (assign square (? x / * (x) (x)) /
= 16 (square 4));
[hear] (assign square (? x / * (x) (x)) /
= 64 (square 8));
[hear] (assign square (? x / * (x) (x)) /
= 9 (square 3));
# show that functions can be remembered across statements
[hear] (define square / ? x / * (x) (x));
[hear] (= (square 5) 25);
[hear] (= (square 0) 0);
[hear] (= (square 1) 1);
[hear] (= (square 9) 81);
[hear] (define plusone / ? x / + (x) 1);
[hear] (= (plusone 7) 8);
[hear] (= (plusone 3) 4);
[hear] (= (plusone 3) 4);
[hear] (= (plusone 5) 6);
# This could all be simplified or removed
# once the handling of true / false stabilizes