Lazy lists.
include Core.Monad.S with type a t := a tinclude Base__.Monad_intf.S_without_syntax with type a t := a ttype 'a tA monad is an abstraction of the concept of sequencing of computations. A value of type 'a monad represents a computation that returns a value of type 'a.
include Base__.Monad_intf.Infix with type a t := a tmodule Monad_infix : Base__.Monad_intf.Infix with type a t := a tval empty : unit ‑> 'a tval is_empty : 'a t ‑> boolval length : 'a t ‑> intval nth : 'a t ‑> int ‑> 'a optionval find : f:('a ‑> bool) ‑> 'a t ‑> 'a optionval fold_left : f:('a ‑> 'b ‑> 'a) ‑> init:'a ‑> 'b t ‑> 'aval fold_right : f:('a ‑> 'b ‑> 'b) ‑> 'a t ‑> init:'b ‑> 'bval iter : 'a t ‑> f:('a ‑> unit) ‑> unitval of_iterator : curr:('a ‑> 'b option) ‑> next:('a ‑> 'a) ‑> init:'a ‑> 'b tval build : f:('s ‑> ('a * 's) option) ‑> seed:'s ‑> 'a tval unfold : f:('a ‑> 'a option) ‑> init:'a ‑> 'a tval uniter : f:(unit ‑> 'a option) ‑> 'a tval of_list : 'a list ‑> 'a tval to_rev_list : 'a t ‑> 'a listval to_list : 'a t ‑> 'a listval of_array : 'a array ‑> 'a tval to_array : 'a t ‑> 'a arraymodule Of_container : sig ... endmodule Iterator : sig ... end