Module Memo

module Memo: sig .. end
Function memoization

val memo : ?size:int -> ('a -> 'b) -> 'a -> 'b
Memoize a function using built-in polymorphic hash.
val memo_recursive : ?size:int -> (('a -> 'b) -> 'a -> 'b) -> 'a -> 'b
Memoize a recursive function using built-in polymorphic hash.
module Make: 
functor (M : Hashtbl.HashedType) -> sig .. end
Functorized memoization with user-defined hash function.
module Tabulate: sig .. end