|
|
@ -1,6 +1,6 @@ |
|
|
|
# minproto.leg -- minimal prototype langauge for semantic experiments |
|
|
|
# |
|
|
|
# last edited: 2024-05-11 20:13:21 by piumarta on zora |
|
|
|
# last edited: 2024-05-12 07:57:37 by piumarta on zora |
|
|
|
|
|
|
|
%{ |
|
|
|
; |
|
|
@ -1962,12 +1962,13 @@ oop ForFromTo_eval(oop exp, oop env) |
|
|
|
long stop = integerValue(last, "for"); |
|
|
|
long step = start < stop ? 1 : -1; |
|
|
|
oop result = nil; |
|
|
|
start -= step; |
|
|
|
LOOP(); |
|
|
|
for (;;) { |
|
|
|
start += step; |
|
|
|
Object_put(env2, identifier, newInteger(start)); |
|
|
|
result = eval(body, env2); |
|
|
|
if (start == stop) break; |
|
|
|
start += step; |
|
|
|
} |
|
|
|
DONE(); |
|
|
|
return result; |
|
|
|