memoize: A memoization library

[ bsd3, data, library ] [ Propose Tags ]

This library provides a type class Memoizable for memoizing functions, along with instances for a variety of argument types. It includes a Template Haskell function for deriving Memoizable instances for arbitrary algebraic datatypes.

The library constructs pure memo caches without the use of unsafePerformIO. This technique relies on implementation assumptions that, while not guaranteed by the semantics of Haskell, appear to be true.

Versions 0.1, 0.2, 0.3, 0.4, 0.6, 0.7, 0.8, 0.8.1
Dependencies base (>=3 && <5), template-haskell (>=2 && <2.8) [details]
License BSD-3-Clause
Author Jesse A. Tov <tov@ccs.neu.edu>
Maintainer tov@ccs.neu.edu
Revised Revision 1 made by HerbertValerioRiedel at Fri Jan 15 20:29:39 UTC 2016
Category Data
Source repo head: git clone git://github.com/tov/memoize.git
Uploaded by JesseTov at Fri Jan 4 22:31:11 UTC 2013
Distributions Debian:0.7, NixOS:0.8.1
Downloads 5099 total (33 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-11-28 [all 7 reports]
Hackage Matrix CI

Modules

  • Data
    • Function
      • Data.Function.Memoize

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees