What OCaml libraries are there for lazy list handling?
backtracking, lazylist, ocaml
Solution
Ocaml Batteries has a lazy list module, check out the `to_stream` function. As for backtracking, you can look into camlp4's stream parsers now that you have a Stream.t .
Problem
What OCaml libraries are out there that provide lazy list handling? I am looking for something along these lines: ``` type 'a lazy_list = (*'*) | Nil | Cons of 'a * 'a lazy_list lazy_t let from f = let rec gen n = lazy ( match f n with | Some x -> Cons (x, gen (n + 1)) | None -> Nil ) in gen 0 ``` Integration with the `Stream` type and syntactic sugar for backtracking Camlp4 parsers would be nice.