X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=lambda-let.html;h=c5e1a640a7dfa2cc9bc92545a0590d29bc93bf44;hp=f56c2c52211015cc3b6dc27362373bf49dd79238;hb=d63b0d0e1c52b50a383e419345a54e2bc6339a77;hpb=3a5bbeb0ce1de37b0203e7c0efc2062608a9827c;ds=sidebyside diff --git a/lambda-let.html b/lambda-let.html index f56c2c52..c5e1a640 100644 --- a/lambda-let.html +++ b/lambda-let.html @@ -1,10 +1,11 @@ -Lambda tutorial - +Lambda evaluator with lets + + Try clicking on the "Reduce" button:
+

+Notes: you have to fully specify parentheses and separate your lambdas. So for example, you can't write `(\x y. y)`; you have to write `(\x (\y y))`. +

+The parser treats symbols that haven't yet been bound (as `yes` and `no` in the example above) as free variables. +

+If you try to evaluate a non-terminating form, like `((\x (x x)) (\x (x x)))`, you'll probably have to force-quit your browser and start over. Anything you had earlier typed in the upper box will probably be lost. +