functor (C : Computation->
  sig
    type input = C.input
    type output = C.output
    val compute : ThreadPoolExecutor.t -> input Stream.t -> output -> output
  end