Safe Haskell | Safe-Inferred |
---|
Memoisation. It's useful for dynamic programming.
- class MemoTable t where
- emptyMemoTable :: Ord a => t a b
- lookupMemoTable :: Ord a => a -> t a b -> Maybe b
- insertMemoTable :: Ord a => a -> b -> t a b -> t a b
- type Memo t a b = a -> State (t a b) b
- memo :: (MemoTable t, Ord a) => (a -> State (t a b) b) -> ((a -> State (t a b) b) -> Memo t a b) -> a -> b
Class
emptyMemoTable :: Ord a => t a bSource
lookupMemoTable :: Ord a => a -> t a b -> Maybe bSource
insertMemoTable :: Ord a => a -> b -> t a b -> t a bSource