package fix

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Tabulate.MakeSource

Make constructs a tabulator for a finite type that is equipped with an implementation of imperative maps.

Parameters

module F : sig ... end
module M : sig ... end

Signature

Sourcetype key = F.t

The type of keys.

Sourceval tabulate : (key -> 'a) -> key -> 'a

tabulate is a tabulation combinator for the type key. The function call tabulate f produces a function f' that behaves extensionally like f, but is tabulated.

Like memoization, tabulation guarantees that, for every key x, the image f x is computed at most once. Unlike memoization, where this computation takes place on demand, here, the computation of f x for every x takes place eagerly, when tabulate is invoked. The graph of the function f, a table, is constructed and held in memory.

OCaml

Innovation. Community. Security.