projects
/
matthijs
/
master-project
/
cλash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add a trailing newline to HighOrdAlu.
[matthijs/master-project/cλash.git]
/
cλash
/
CLasH
/
Utils.hs
diff --git
a/cλash/CLasH/Utils.hs
b/cλash/CLasH/Utils.hs
index 822bd55dae5c7bb286552f08178dce7600ab5009..94da85494f2216f75b395b542ed6c07b5362ecbf 100644
(file)
--- a/
cλash/CLasH/Utils.hs
+++ b/
cλash/CLasH/Utils.hs
@@
-50,3
+50,10
@@
isJustM = Monad.liftM Maybe.isJust
andM, orM :: (Monad m) => m [Bool] -> m Bool
andM = Monad.liftM and
orM = Monad.liftM or
andM, orM :: (Monad m) => m [Bool] -> m Bool
andM = Monad.liftM and
orM = Monad.liftM or
+
+mapAccumLM :: (Monad m) => (acc -> x -> m (acc, y)) -> acc -> [x] -> m (acc, [y])
+mapAccumLM _ s [] = return (s, [])
+mapAccumLM f s (x:xs) = do
+ (s', y ) <- f s x
+ (s'', ys) <- mapAccumLM f s' xs
+ return (s'', y:ys)