Files
wren/test/while.wren
Bob Nystrom 157944aa27 Get closures working!
In the process, I had to change the grammar. There is now a strong
separation between statements and expressions. The code was just wrong
before when it popped locals at the end of a block scope because there
could be temporaries on the stack if the block was in expression
position. This fixes that.

Still need to implement closing over `this`.
2013-12-04 07:43:50 -08:00

25 lines
329 B
Plaintext

// Single-expression body.
var c = 0
while (c < 3) io.write(c = c + 1)
// expect: 1
// expect: 2
// expect: 3
// Block body.
var a = 0
while (a < 3) {
io.write(a)
a = a + 1
}
// expect: 0
// expect: 1
// expect: 2
// Newline after "while".
var d = 0
while
(d < 3) io.write(d = d + 1)
// expect: 1
// expect: 2
// expect: 3