You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently we only allow slot lists in objects. This prevents the following from being valid code:
| foo. bar |
foo: 123.
bar: 456.
foo * bar; asString printLine.
There is no reason for the top-level context to not be a method object (in fact, the runtime already wraps the top-level context in a method object before activating it!). Therefore it makes equal sense to have the parser allow a slot list to be valid there.
The text was updated successfully, but these errors were encountered:
This accomplishes several things:
- Improve parser soundness by having a provable grammar.
- Fix some of the ickier parts of the parser and make things more
"regular".
- Prepare for some performance-related changes. Namely, method and block
objects may no longer have parent slots.
- Prepare for some QoL features like #14.
No impact expected on performance.
As a bonus, I've added the BNF grammar I used as a basis for the new
parser to the repository.
Currently we only allow slot lists in objects. This prevents the following from being valid code:
There is no reason for the top-level context to not be a method object (in fact, the runtime already wraps the top-level context in a method object before activating it!). Therefore it makes equal sense to have the parser allow a slot list to be valid there.
The text was updated successfully, but these errors were encountered: