From a6d534b172ccb8eadc24e0e903b196085869800e Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Fri, 28 Mar 2008 15:20:46 -0400 Subject: Simple elaboration working --- src/search.sig | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/search.sig') diff --git a/src/search.sig b/src/search.sig index 102ef558..ac867146 100644 --- a/src/search.sig +++ b/src/search.sig @@ -34,7 +34,10 @@ signature SEARCH = sig type ('data, 'state, 'abort) mapfolder = 'data -> 'state -> ('data * 'state, 'abort) result - val return2 : 'state1 -> 'state2 -> ('state1 * 'state2, 'abort) result + type ('context, 'data, 'state, 'abort) mapfolderB = + 'context -> 'data -> 'state -> ('data * 'state, 'abort) result + + val return2 : 'data -> 'state -> ('data * 'state, 'abort) result val map : ('state1, 'abort) result * ('state1 -> 'state2) @@ -43,7 +46,7 @@ signature SEARCH = sig val map2 : ('state2 -> ('state1 * 'state2, 'abort) result) * ('state1 -> 'state1') -> ('state2 -> ('state1' * 'state2, 'abort) result) - + val bind : ('state1, 'abort) result * ('state1 -> ('state2, 'abort) result) -> ('state2, 'abort) result -- cgit v1.2.3