X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=assignment9.mdwn;h=c8d2889f4f16f69752416f1938310d2bde927037;hp=bb15aab1d05876cf8c5e62513ee5598824912f6d;hb=4afb5894348b73e779d6a8f88b835b96f18c282e;hpb=41542591768c00d3a395a458739739ad2dcbea59 diff --git a/assignment9.mdwn b/assignment9.mdwn index bb15aab1..c8d2889f 100644 --- a/assignment9.mdwn +++ b/assignment9.mdwn @@ -118,14 +118,14 @@ val make_int_stream : int -> int stream = [fun] val int_stream : int stream = Next (1, [fun]) (* First element: 1 *) # let tail = match int_stream with Next (i, rest) -> rest;; -val tail : unit -> int stream = (* Tail: a thunk *) +val tail : unit -> int stream = [fun] (* Tail: a thunk *) (* Force the thunk to compute the second element *) # tail ();; -- : int stream = Next (2, [fun]) (* Second element: 2 *) +- : int stream = Next (2, [fun]) (* Second element: 2 *) # match tail () with Next (_, rest) -> rest ();; -- : int stream = Next (3, ) (* Third element: 3 *) +- : int stream = Next (3, [fun]) (* Third element: 3 *) You can think of `int_stream` as a functional object that provides