annotate lib/ur/option.urs @ 1713:1b3f82b09bb0

Fix monoization of recursive variants
author Adam Chlipala <adam@chlipala.net>
date Mon, 16 Apr 2012 09:07:28 -0400
parents a99b743a3087
children 36428d853c97
rev   line source
adamc@841 1 datatype t = datatype Basis.option
adamc@841 2
adam@1544 3 val monad : monad t
adam@1544 4
adamc@846 5 val eq : a ::: Type -> eq a -> eq (t a)
adamc@961 6 val ord : a ::: Type -> ord a -> ord (t a)
adamc@846 7
adamc@944 8 val isNone : a ::: Type -> t a -> bool
adamc@841 9 val isSome : a ::: Type -> t a -> bool
adamc@844 10
adamc@844 11 val mp : a ::: Type -> b ::: Type -> (a -> b) -> t a -> t b
adamc@846 12 val bind : a ::: Type -> b ::: Type -> (a -> option b) -> t a -> t b
adamc@1068 13
adamc@1068 14 val get : a ::: Type -> a -> option a -> a