This website requires JavaScript.
Explore
Mail
Help
Register
Sign In
Mirror
/
wren
Watch
1
Star
0
Fork
1
You've already forked wren
mirror of
https://github.com/wren-lang/wren.git
synced
2026-01-18 13:49:59 +01:00
Code
Issues
Packages
Projects
Releases
Wiki
Activity
Files
6c3aa852281c0e4b8997099e6af904c0eb7c171d
wren
/
test
/
closure
/
open_closure_in_method.wren
11 lines
122 B
Plaintext
Raw
Normal View
History
Unescape
Escape
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
{
var local = "local"
class Foo {
method {
Make IO a static class instead of a singleton.
2013-12-21 19:25:09 -08:00
IO.write(local)
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
}
}
Use more conventional syntax for constructors. They are now invoked like "new Foo". Also, superclass constructors are now much less semantically and syntactically weird. Since the instance is created before any constructor is called, there's no point in time where the instance isn't there.
2013-12-19 07:02:27 -08:00
(new Foo).method // expect: local
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
}
Reference in New Issue
Copy Permalink