Mercurial > urweb
diff lib/ur/monad.urs @ 1768:a613cae954ca
Some standard library additions from Edward Z. Yang
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Sat, 19 May 2012 11:32:12 -0400 |
parents | 0bf73c3e4563 |
children | cbd294994c69 |
line wrap: on
line diff
--- a/lib/ur/monad.urs Thu May 17 10:20:24 2012 -0400 +++ b/lib/ur/monad.urs Sat May 19 11:32:12 2012 -0400 @@ -7,6 +7,13 @@ val mp : m ::: (Type -> Type) -> monad m -> a ::: Type -> b ::: Type -> (a -> b) -> m a -> m b +val liftM : m ::: (Type -> Type) -> monad m -> a ::: Type -> b ::: Type + -> (a -> b) -> m a -> m b +(* Haskell-style synonym for [mp] *) + +val liftM2 : m ::: (Type -> Type) -> monad m -> a ::: Type -> b ::: Type -> c ::: Type + -> (a -> b -> c) -> m a -> m b -> m c + val foldR : K --> m ::: (Type -> Type) -> monad m -> tf :: (K -> Type) -> tr :: ({K} -> Type)