The memoize package

[Tags:bsd3, library, test]

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 BSD3
Author Jesse A. Tov <>
Category Data
Source repository head: git clone git://
Uploaded Fri Jan 4 22:31:11 UTC 2013 by JesseTov
Updated Fri Jan 15 20:29:39 UTC 2016 by HerbertValerioRiedel to revision 1
Distributions Debian:0.7, NixOS:0.8.1
Downloads 3186 total (40 in the last 30 days)
0 []
Status Docs not available [build log]
All reported builds failed as of 2016-11-28 [all 7 reports]
Hackage Matrix CI


  • Data
    • Function
      • Data.Function.Memoize


Maintainer's Corner

For package maintainers and hackage trustees