可能重复:
Forth language EBNF rule for an infinite loop or if statement
是否有描述Forth while循环(或任何其他循环)的EBNF规则?
答案 0 :(得分:3)
BEGIN <code> WHILE <code> REPEAT
- 执行第一个<code>
块并消耗它在堆栈顶部留下的任何内容;如果它非零,则执行第二个<code>
块,然后一切都重新开始。如果它为零,则执行跳至REPEAT
之后。请注意,这只能在定义中使用(例如,“: foo ... ;
”)。