Memoization combinators are great for providing high-performance Haskell programs,
but they can be even faster if memoization is performed on a finite, discrete domain
since an array can then be used to store results.
This package provides various combinators for doing just this, including also
combinators for quanitzing and discretizing Float/Double-valued functions.
Example: