All notable changes to the monad-memo
project will be documented in this file
- Fix GHC 9.2.1 build
README.md
links
- Travis-ci build configuration
- CI on Github actions with test coverage and Hackage upload
monad-memo.cabal
structure: redundancy and to enable test coverage calculationCHANGELOG.md
structure
- Support multiple mutable caches in transformers stack This allows Array/Vector-based caches to be used for mutually recursive function memoization
- Refresh project to be compilable with latest GHC and libraries
- Remove dependency on
mtl
package (transformers
is sufficient) - Use
Except
instead of deprecatedError
- Remove support for
ListT
transformer since it is now deprecated - Use standard
StateT
&ReaderT
forMonadCache
implementations
- Documentation
Example
is renamed toexample
and is excluded from package's module hierarchy
ArrayCache
: mutable array-basedMonadCache
for top performanceVectorCache
(and flavours)vector
-basedMonadCache
for even better performance- Simple benchmark included
- Bug fixes in transformer implementations (
Reader
,State
,RWS
)
- Added generalized
MemoStateT
transformer (to host anyData.MapLike
cache-container) MemoT
is nowMemoStateT
instantiated withData.Map
- A set of
forX
functions (for2
,for3
andfor4
) to adapt curried function into uncurriedMemoCache