diff --git a/demo/lambda_calculus b/demo/lambda_calculus new file mode 100755 index 0000000..26c97b7 Binary files /dev/null and b/demo/lambda_calculus differ diff --git a/demo/lambda_calculus-2.crf b/demo/lambda_calculus.crf similarity index 89% rename from demo/lambda_calculus-2.crf rename to demo/lambda_calculus.crf index 9df50b4..f483cb2 100644 --- a/demo/lambda_calculus-2.crf +++ b/demo/lambda_calculus.crf @@ -40,10 +40,14 @@ eval cxt exp = case exp of let i2 = case eval cxt e2 of { VInt i => i } in VInt (i1 + i2) -exp = EApp (EAbs 'x' (EVar 'x')) (EApp (EAbs 'x' (EAdd (EVar 'x') (EInt 100))) (EInt 200)) --- (λ x . x) (λ x . x + 100) 200 +-- (λx. x + x) 200 +exp = EApp + (EAbs 'x' + (EAdd + (EVar 'x') + (EVar 'x'))) + (EInt 200) main : Int main = case eval (Cxt Nil) exp of VInt i => i - diff --git a/demo/lambda_calculus.ll b/demo/lambda_calculus.ll index f5e53c4..da0c27e 100644 Binary files a/demo/lambda_calculus.ll and b/demo/lambda_calculus.ll differ diff --git a/demo/lc b/demo/lc deleted file mode 100755 index 1487b91..0000000 Binary files a/demo/lc and /dev/null differ diff --git a/sample-programs/working/lambda_calculus-2.crf b/sample-programs/working/lambda_calculus-2.crf index 9df50b4..c97cd67 100644 --- a/sample-programs/working/lambda_calculus-2.crf +++ b/sample-programs/working/lambda_calculus-2.crf @@ -40,8 +40,13 @@ eval cxt exp = case exp of let i2 = case eval cxt e2 of { VInt i => i } in VInt (i1 + i2) -exp = EApp (EAbs 'x' (EVar 'x')) (EApp (EAbs 'x' (EAdd (EVar 'x') (EInt 100))) (EInt 200)) --- (λ x . x) (λ x . x + 100) 200 +-- (λx. x + x) 200 +exp = EApp + (EAbs 'x' + (EAdd + (EVar 'x') + (EVar 'x'))) + (EInt 200) main : Int main = case eval (Cxt Nil) exp of