Legend:
Library
Module
Module type
Parameter
Class
Class type
A datastructure (based on Hashtbl) to accumulate values.
An Accu.t can be seen as a generalized histogram: samples are mapped to bins, and each bin has a corresponding value which may be its size or its contents depending on the need.
Generic API
type('sample, 'bin, 'increment, 'accu) t
General type for accumulators: 'samples are mapped to 'bins, and the 'accumulated value for a 'bin is updated with an 'increment
val create :
?n:int ->bin:('a->'b)->zero:'d->add:('c->'d->'d)->unit ->('a, 'b, 'c, 'd)t
create ~n ~zero ~bin ~add creates an accumulator, which maps instances to bins with bin, uses zero as a neutral element (that is the value associated to a bin before any value has been added to it) and updates the value of a bin with add. n is an estimation of the maximum number of bins.
val product :
?filter:('a->'b-> bool)->('a->'b->'c)->'a list->'b list->('c * int)Stream.t
product filter f l1 l2 computes an histogram of values returned by f when it is applied for all combinations of elements in l1 and l2 such that the predicate filter is true