[m-rev.] diff: add multi list.fold{l,r}/4
Julien Fischer
juliensf at csse.unimelb.edu.au
Wed Nov 29 17:40:15 AEDT 2006
One of the things that came out of the disucssion I had with
Ondrej Bojar this afternoon ...
Estimated hours taken: 0.1
Branches: main
library/list.m:
Add multidet versions of list.foldl/4 and list.foldr/4.
NEWS:
Announce the additions.
Julien.
Index: NEWS
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/NEWS,v
retrieving revision 1.430
diff -u -r1.430 NEWS
--- NEWS 1 Nov 2006 06:32:46 -0000 1.430
+++ NEWS 29 Nov 2006 06:37:13 -0000
@@ -15,6 +15,9 @@
Changes to the Mercury standard library:
+* We have added versions of list.foldl/4 and list.foldr/4 that have
+ determinism multi.
+
* We have changed the interface of the ops module to make lookups of operators
more efficient.
Index: library/list.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/library/list.m,v
retrieving revision 1.156
diff -u -r1.156 list.m
--- library/list.m 23 Oct 2006 00:32:58 -0000 1.156
+++ library/list.m 29 Nov 2006 06:33:47 -0000
@@ -648,6 +648,7 @@
:- mode list.foldl(pred(in, di, uo) is det, in, di, uo) is det.
:- mode list.foldl(pred(in, in, out) is det, in, in, out) is det.
:- mode list.foldl(pred(in, in, out) is semidet, in, in, out) is semidet.
+:- mode list.foldl(pred(in, in, out) is multi, in, in, out) is multi.
:- mode list.foldl(pred(in, in, out) is nondet, in, in, out) is nondet.
:- mode list.foldl(pred(in, di, uo) is cc_multi, in, di, uo) is cc_multi.
:- mode list.foldl(pred(in, in, out) is cc_multi, in, in, out) is cc_multi.
@@ -663,6 +664,7 @@
:- mode list.foldr(pred(in, di, uo) is det, in, di, uo) is det.
:- mode list.foldr(pred(in, in, out) is det, in, in, out) is det.
:- mode list.foldr(pred(in, in, out) is semidet, in, in, out) is semidet.
+:- mode list.foldr(pred(in, in, out) is multi, in, in, out) is multi.
:- mode list.foldr(pred(in, in, out) is nondet, in, in, out) is nondet.
:- mode list.foldr(pred(in, di, uo) is cc_multi, in, di, uo) is cc_multi.
:- mode list.foldr(pred(in, in, out) is cc_multi, in, in, out) is cc_multi.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to: mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions: mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the reviews
mailing list