From: Chris Barker Date: Mon, 4 Oct 2010 02:48:53 +0000 (-0400) Subject: edits X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=d50ce29231fc7454463b0a1b7b898022db6b67d1 edits --- diff --git a/assignment_3_evaluator.mdwn b/assignment_3_evaluator.mdwn index f4f5fb92..c4032ee3 100644 --- a/assignment_3_evaluator.mdwn +++ b/assignment_3_evaluator.mdwn @@ -48,7 +48,7 @@ let t3 = (make\_list 3 empty) in let t12 = (make\_list t1 (make\_list t2 empty)) in let t23 = (make\_list t2 (make\_list t3 empty)) in let ta = (make\_list t1 t23) in -let tb = (make\_list t12 t3) in +let tb = (make\_list t12 (make\_list t3 empty)) in let tc = (make\_list t1 (make\_list t23 empty)) in ; ;sum-leaves t1 ; ~~> 1 @@ -58,8 +58,13 @@ let tc = (make\_list t1 (make\_list t23 empty)) in ;sum-leaves t23 ; ~~> 5 ;sum-leaves ta ; ~~> 6 ;sum-leaves tb ; ~~> 6 +;sum-leaves tc ; ~~> 6 ; -length (tail mylist) +let add = \l r. l succ r in +let fold = Y (\f g l z. isempty l z (g (head l)(f g (tail l) z))) in +; +; hint: +fold add mylist 0