aboutsummaryrefslogtreecommitdiff
path: root/src/boot/ast.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot/ast.boot')
-rw-r--r--src/boot/ast.boot9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/boot/ast.boot b/src/boot/ast.boot
index 961cad8f..719d583d 100644
--- a/src/boot/ast.boot
+++ b/src/boot/ast.boot
@@ -359,15 +359,18 @@ bfReduce(op,y)==
bfReduceCollect(op,y)==
y is ["COLLECT",:.] =>
- body := y.1
- itl := y.2
+ body := second y
+ itl := third y
a :=
op is ["QUOTE",:.] => second op
op
op := bfReName a
init := a has SHOETHETA or op has SHOETHETA
bfOpReduce(op,init,body,itl)
- bfReduce(op,bfTupleConstruct (y.1))
+ seq :=
+ y = nil => bfTuple nil
+ second y
+ bfReduce(op,bfTupleConstruct seq)
-- delayed collect