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

Attachment: grammar.tgz
Description: Binary data

Reply via email to