Mercurial > urweb
comparison lib/ur/basis.urs @ 1544:a99b743a3087
Basis.mkMonad
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Fri, 19 Aug 2011 15:23:01 -0400 |
parents | 27b8c0a460cf |
children | d5c961c709f9 |
comparison
equal
deleted
inserted
replaced
1543:6f046b4bad24 | 1544:a99b743a3087 |
---|---|
123 -> t -> m t | 123 -> t -> m t |
124 val bind : m ::: (Type -> Type) -> t1 ::: Type -> t2 ::: Type | 124 val bind : m ::: (Type -> Type) -> t1 ::: Type -> t2 ::: Type |
125 -> monad m | 125 -> monad m |
126 -> m t1 -> (t1 -> m t2) | 126 -> m t1 -> (t1 -> m t2) |
127 -> m t2 | 127 -> m t2 |
128 | |
129 val mkMonad : m ::: (Type -> Type) | |
130 -> {Return : t ::: Type -> t -> m t, | |
131 Bind : t1 ::: Type -> t2 ::: Type -> m t1 -> (t1 -> m t2) -> m t2} | |
132 -> monad m | |
128 | 133 |
129 con transaction :: Type -> Type | 134 con transaction :: Type -> Type |
130 val transaction_monad : monad transaction | 135 val transaction_monad : monad transaction |
131 | 136 |
132 con source :: Type -> Type | 137 con source :: Type -> Type |