aboutsummaryrefslogtreecommitdiff
path: root/sucl
diff options
context:
space:
mode:
authorzweije2001-08-17 09:51:35 +0000
committerzweije2001-08-17 09:51:35 +0000
commit84b6a8bcd90fdab0fa0ef7170a891bc3aac30404 (patch)
treef3de8b9118724807e84ca500adbe20dc8570ecf6 /sucl
parentBug fixes: default cases and (more or less) correct types for generated case ... (diff)
This commit was generated by cvs2svn to compensate for changes in r652,
which included commits to RCS files with non-trunk default branches. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@653 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'sucl')
-rw-r--r--sucl/basic.dcl3
-rw-r--r--sucl/basic.icl5
2 files changed, 8 insertions, 0 deletions
diff --git a/sucl/basic.dcl b/sucl/basic.dcl
index 0f2118f..27c170d 100644
--- a/sucl/basic.dcl
+++ b/sucl/basic.dcl
@@ -176,5 +176,8 @@ showtriple :: !.(.a -> .String) !.(.b -> .String) !.(.c -> .String) !(.a,.b,.c)
// `Split sep' splits a list into a list of sublists which are separated by `sep'.
split :: a -> .(.[a] -> [.[a]]) | == a
+// `Stub modulename functionname message' aborts with a explanatory message
+stub :: .String .String .String -> a
+
// `Superset xs ys' determines whether ys is a superset (actually, super-multi-set or super-list) of xs.
superset :: .[a] -> .(.[a] -> Bool) | == a
diff --git a/sucl/basic.icl b/sucl/basic.icl
index a8bfcdf..0953741 100644
--- a/sucl/basic.icl
+++ b/sucl/basic.icl
@@ -255,5 +255,10 @@ split sep
= ([x:ys],yss)
where (ys,yss) = spl xs
+// `Stub modulename functionname message' aborts with a explanatory message
+stub :: .String .String .String -> a
+stub modulename functionname message
+= abort (modulename+++": "+++functionname+++": "+++message)
+
superset :: .[a] -> .(.[a] -> Bool) | == a
superset set = isEmpty o (removeMembers set)