The short version: This is intended to be the "cleaned up to check into the Parrot tree" version Dan mentioned, so now would be a good time to yell if you have problems with it. The documentation is much better (or at least larger) than that in the previous version. You _will_ run into bugs, but there's enough that works for it to be fun to play with.
The longer version:
Additions:
- statement guards: if, unless, while, until
- loops: while, until
- subs without explicit parameter lists get @_ (and do strange things
with it, since flattening doesn't work yet).
- hyped logical operators
- more compiler tests.
- more parser tests (John Kingsley).
- more docs.
- a bit more speed in the grammar by using regexes rather than a rule
to hype operators
- sub parameter lists will affect parsing (e.g. "sub foo($x)" will be
a unary operator).
Fixes:
- || and && on lists return lists instead of scalars.
- a few more misc. things
- and a whole batch of fixes from Kingsley:
- foreach $f (@a) {}"
- "f() if (1)"
- "next if $a < $b"
- comment between end of block and next statement.
/s
grammar.tgz
Description: Binary data
