A Haskell memoization library