

λ-calculus evaluator - alrex021
http://zaach.github.com/lambdacalc/

======
silentbicycle
The relevant blog post:
<http://zaa.ch/past/2010/4/25/lambda_calculus_evaluator/>

There's a pretty good summary of the lambda calculus in Pierce's _Types and
Programming Languages_ (among others).

------
wingo
Neat!

    
    
      (^x.x x) (^x.x x)
      InternalError: too much recursion

~~~
geocar
That it is labelled "Call-by-value edition" is probably why.

Y[^f.(^x.f (x x)) (^x.f (x x))] and Z[^f. (^x. f (^y. x x y)) (^x. f (^y. x x
y))] appear to expand correctly, but I haven't had my coffee yet...

~~~
kragen
(λx.x x) (λx.x x) is an infinite loop whether you use call-by-"name" or call-
by-value.

~~~
geocar
Oh quite right.

