Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
While :: (Size (m ()) ~ AnySize) => LoopM m (m Bool :-> (m a :-> Full (m ()))) | |
For :: (Size (m ()) ~ AnySize) => LoopM m (Length :-> ((Index -> m a) :-> Full (m ()))) |
Monad m => EvalBind (LoopM m) | |
Monad m => Semantic (LoopM m) | |
Monad m => Eval (LoopM m) | |
Monad m => Render (LoopM m) | |
Monad m => StringTree (LoopM m) | |
Monad m => Equality (LoopM m) | |
Monotonic (LoopM m) | |
SizeProp (LoopM m) | |
Sharable (LoopM m) | |
((:<:) (LoopM Mut) dom, (:<:) ((:||) Variable Type) dom, (:<:) (CLambda Type) dom, (:<:) (MONAD Mut) dom, (:<:) MutableReference dom, (:<:) Let dom, Optimize (CLambda Type) dom, Optimize (MONAD Mut) dom, Optimize dom dom) => Optimize (LoopM Mut) dom | |
(AlphaEq dom dom dom env, Monad m) => AlphaEq (LoopM m) (LoopM m) dom env |
ForLoop :: Type a => Loop (Length :-> (a :-> ((Index -> a -> a) :-> Full a))) | |
WhileLoop :: Type a => Loop (a :-> ((a -> Bool) :-> ((a -> a) :-> Full a))) |
EvalBind Loop | |
Semantic Loop | |
Eval Loop | |
Render Loop | |
StringTree Loop | |
Equality Loop | |
Monotonic Loop | |
Sharable Loop | |
AlphaEq dom dom dom env => AlphaEq Loop Loop dom env | |
SizeProp ((:||) Loop Type) | |
((:<:) ((:||) Literal Type) dom, (:<:) ((:||) Loop Type) dom, (:<:) ((:||) Variable Type) dom, (:<:) (CLambda Type) dom, (:<:) Let dom, OptimizeSuper dom) => Optimize ((:||) Loop Type) dom |