sig
  type 'a t = '-> 'a list
  val unit : unit Reducer.t
  val bool : bool Reducer.t
  val int : int Reducer.t
  val int32 : int32 Reducer.t
  val int64 : int64 Reducer.t
  val nativeint : nativeint Reducer.t
  val char : char Reducer.t
  val string : string Reducer.t
  val float : float Reducer.t
  val complex : Complex.t Reducer.t
  val array : 'a array Reducer.t
  val list : 'a list Reducer.t
  val option : 'a option Reducer.t
  module Map : functor (M : Map.S-> sig val red : 'M.t Reducer.t end
  module Set : functor (S : Set.S-> sig val red : S.t Reducer.t end
  val hashtbl : ('a, 'b) Hashtbl.t Reducer.t
  val queue : 'Queue.t Reducer.t
  val stack : 'Stack.t Reducer.t
  val weak : 'Weak.t Reducer.t
end