Skip to content

Commit e4e4f63

Browse files
committed
exponentiation example
1 parent 5520176 commit e4e4f63

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

examples/eval.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@
4444
// λm.λn.λf.m (n f)
4545
$mult = ['λ', 'm', ['λ', 'n', ['λ', 'f', ['m', ['n', 'f']]]]];
4646

47+
// exp
48+
// λm.λn.n m
49+
$exp = ['λ', 'm', ['λ', 'n', ['n', 'm']]];
50+
4751
// Y combinator, recursion
4852
// does not work due to call-by-value, it loops forever
4953
// λf.(λx.f (x x)) (λx.f (x x))
@@ -146,3 +150,4 @@
146150
// var_dump(evaluate(to_int([$fact, $five])));
147151
// var_dump(evaluate(to_int([$fib, call($plus, $five, $two)])));
148152
// var_dump(evaluate(parse('(λf.f f) (λf.f f)')));
153+
// var_dump(evaluate(to_int(call($exp, $two, $three))));

0 commit comments

Comments
 (0)