From 1cf91890aef13e748affc7f792be4872317096a7 Mon Sep 17 00:00:00 2001 From: Robin Green Date: Mon, 27 Jun 2011 21:36:32 +0100 Subject: recToList --- lib/ur/list.ur | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/ur/list.ur') diff --git a/lib/ur/list.ur b/lib/ur/list.ur index d0c2e7a1..32a9679c 100644 --- a/lib/ur/list.ur +++ b/lib/ur/list.ur @@ -353,3 +353,7 @@ fun assocAdd [a] [b] (_ : eq a) (x : a) (y : b) (ls : t (a * b)) = case assoc x ls of None => (x, y) :: ls | Some _ => ls + +fun recToList [a ::: Type] [r ::: {Unit}] (fl : folder r) + = @foldUR [a] [fn _ => list a] (fn [nm ::_] [rest ::_] [[nm] ~ rest] x xs => + x :: xs) [] fl -- cgit v1.2.3