Portability | portable |
---|---|
Stability | provisional |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Documentation
specM :: Eq a => a -> a -> m aSource
When a is unevaluated,
evaluates the current continuation
with spec
g ag
while testing if g
==
a
, if they differ, it re-evalutes the
continuation with a
. If a
was already evaluated, the continuation is
just directly applied to a
instead.
specM' :: Eq a => a -> a -> m aSource
As per spec
, without the check for whether or not the second argument
is already evaluated.
specByM :: (a -> a -> Bool) -> a -> a -> m aSource
spec
with a user supplied comparison function
specByM' :: (a -> a -> Bool) -> a -> a -> m aSource
spec'
with a user supplied comparison function
specOnM :: Eq c => (a -> c) -> a -> a -> m aSource
spec'
with a user supplied comparison function
specOnM' :: Eq c => (a -> c) -> a -> a -> m aSource
spec'
with a user supplied comparison function