Functor MapReduce.Make

module Make:
functor (C : Computation) -> S with type input = C.input and type output = C.output
Builds a map/reduce implementation for the passed computation.
Parameters:
C : Computation

type input
The type of input values.
 
type output
The type of output values.
 
val compute : ThreadPoolExecutor.t ->
input Stream.t -> output -> output
Iterates over the passed stream using pool threads to execute map operations over the various input values, and applies combine operation over values having identical keys as soon as they are available.

Then, folds over key/value couple through the reduce operation, using the third parameter as the inital value.