sig
  val of_channel_lines : Pervasives.in_channel -> string Stream.t
  val of_channel_blocks : Pervasives.in_channel -> int -> string Stream.t
  val filter : ('-> bool) -> 'Stream.t -> 'Stream.t
  val map : ('-> 'b) -> 'Stream.t -> 'Stream.t
  val map_stream : ('-> 'Stream.t) -> 'Stream.t -> 'Stream.t
  val to_list : 'Stream.t -> 'a list
  val take : int -> 'Stream.t -> 'Stream.t
  val drop : int -> 'Stream.t -> unit
  val output_lines : Pervasives.out_channel -> string Stream.t -> unit
  val output_chars : Pervasives.out_channel -> char Stream.t -> unit
  val optparse : ('-> 'b) -> 'b list -> '-> 'b list
  val optparse_1 : ('-> 'b) -> ('-> 'b) -> 'b list -> '-> 'b list
  val optparse_1_folded : ('-> 'b) -> ('-> '-> 'c) -> '-> '-> 'c
  val optparse_1_string : ('-> string) -> '-> string
end