The Perl 6 design team met by phone on 26 May 2010. Larry, Allison,
Patrick, Will, and chromatic attended.
Larry:
:()
syntax is now always signature
- we now use
foofix:[...]
as the general op form instead of foofix:(...)
- refactored the sematics of
:nth
and :x
:nth()
now only ever takes a monotonically increasing list
- S03 now explains how "not-raising" works on
!=
and ne
- it now basically matches the intuitions of an English speaker via HOP definition of negate metaop
- STD sometimes didn't require semi between statements
- statement modifiers are expression terminators but not valid statement terminators
- an unexpected statement modifier word like
if
could terminate one statement and start another
- fixed up backslashes in character classes to allow
\s
etc and reject \u
etc
- STD was accidentally using the same lexpad for different multis
- Cursor now treats
:()
on name extension as a signature always, never as a categorical
- we shouldn't introduce the stopper for circumfix until we're in the circumfix, or we can't use the same char on both ends
- placeholder messages error messages are now much more informative and correct
- we now disallow use of placeholder after same variable has been used as a non-placeholder, even for an outer reference
- renamed add_macro (which it doesn't) to add_categorical (which it does)
- participating frequently in discussions on semantics both on irc and p6l
- working closely with sorear++ as he brings viv closer to bootstrapping, yay!
- soon can bootstrap past gimme5
Allison:
- worked on Pynie this week in my limited spare time
- one goal is to generate the parser directly from the Python grammar
- wrote a small, lightweight PEG parser which generates a match tree from the Python 3 grammar
- can generate a lexer directly
- right now it creates a parse tree
- looks similar to the match nodes of NQP-rx
- dumps out a tree to the PIR parser
- working on PaFo elections for next year, but trying to delegate those
- will have more time after June 7
Will:
- working on Perl 6 advent tests
- many more people are doing more work than me
- liasing with Rakudo folks for any important Parrot bugs before the Rakudo Star release
- my current direction there is "don't break anything"
Patrick:
- sorear added hash flattening to NQP
- lots of work on closures in PAST and NQP
- they properly clone
- fixes some lexical problems
- need to get that to work in Rakudo
- that's tougher; Rakudo has to wrap Parrot subs
- wrapper object needs cloning as well, along with its attributes
- we'll add a new PAST node type to help
- that node understands contexts
- essentially a way to add void context optimizations to your AST
- that solves many problems in Rakudo beyond closures
- added a setting into NQP along with its test suite
- not automatically loaded, but available
- contains standard hash and array methods
- Parrot's ops2c project uses those
- other people can update and enhance that setting as necessary
- NQP also has the ability to parse type names
- NQP doesn't do anything with them yet
- eventually they'll allow the use of multis
- cleaning up some NQP bugs regarding lexicals and package storage of subs
- Bruce Keeler enabled variable interpolations in regexes
- working on some refactorings to simplify that approach
- works in NQP and Rakudo now
- that's a feature we've never had before
- Rakudo's REPL now works better, thanks to sorear
- HLLCompiler now written more in NQP as part of that
- NQP now can do
eval
- NQP remembers lexicals in interactive mode now
- adding that to Rakudo is more complex
- working on that
- pleased with the progress on #perl6
c:
- reviewing long term plans for GC and Lorito
- should have more time free soon