diff options
Diffstat (limited to 'src/boot/ast.boot')
| -rw-r--r-- | src/boot/ast.boot | 9 |
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 |
