Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- datatype 'a stream = Cons of 'a * (unit -> 'a stream);
- fun merge (Cons(a, f)) (s2) = Cons(a, fn () => merge s2 (f()));
- fun flatten (Cons(Cons(a, f), g)) = Cons(a, fn () => merge (f()) (flatten (g())));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement