egison-3.2.5: Programming language with non-linear pattern-matching against unfree data types

Safe HaskellNone
LanguageHaskell98

Language.Egison.Types

Documentation

liftError :: MonadError e m => Either e a -> m a Source

newtype FreshT m a Source

Constructors

FreshT 

Fields

unFreshT :: StateT Int m a
 

runFreshT :: Monad m => Int -> FreshT m a -> m (a, Int) Source

runFresh :: Int -> Fresh a -> (a, Int) Source

data MList m a Source

Constructors

MNil 
MCons a (m (MList m a)) 

fromList :: Monad m => [a] -> MList m a Source

fromSeq :: Monad m => Seq a -> MList m a Source

fromMList :: Monad m => MList m a -> m [a] Source

msingleton :: Monad m => a -> MList m a Source

mfoldr :: Monad m => (a -> m b -> m b) -> m b -> MList m a -> m b Source

mappend :: Monad m => MList m a -> m (MList m a) -> m (MList m a) Source

mconcat :: Monad m => MList m (MList m a) -> m (MList m a) Source

mmap :: Monad m => (a -> m b) -> MList m a -> m (MList m b) Source

mfor :: Monad m => MList m a -> (a -> m b) -> m (MList m b) Source