Wednesday March 31, 2010
04:17 PM
Perl 6 Design Minutes for 17 March 2010
The Perl 6 design team met by phone on 17 March 2010. Larry, Allison, and chromatic attended.
Larry:
- documented which ops don't autoclose with
*, including assignment - conjectured a generalization of the closure-calling context (value-only lists) that subscripts enforce
- this generalization might allow the autoclosing of some of the current exceptions such as
1..* - added
Z to go with X metaop; documented that X and Z desugar to higher-order methods, crosswith and zipwith - speculate about how to
zip/cross dwimmily with non-identical ops; possibly creating a real use case for surreal precedence - however, for now sticking with conservative approach of requiring parens on differing list infixes
- hacking on
viv again - trying to get that bootstrapped, so I don't have to use
gimme5 - unbitrotted
viv --p6 so it exactly reproduces STD.pm again - various developments with
viv --p5 toward replacing gimme5 - should make it easier to emit other parsers eventually
- may emit Rakudo code someday
- it's a race to see whether STD can do that before the current Rakudo parser resyncs with STD
- anyone who wants to bootstrap on some other VM might want to use that
- mostly tired of writing in the subset of Perl 6 that
gimme5 understands - mostly hacking on better error messages, as always
- catches use of non-
$ hard reference - STD now read minds of people who forget that "
.meth I" is a two-terms-in-a-row error - now produces good messages on attempts to use
y/// or tr/a-z/A-Z/ syntax - now reports "previous line missing its semicolon" in the unexpected block checker
- ambiguous use of
. probably indicates p5-think, not missing method parens - STD now has in a
q-like sublanguage for tr/// string parsing - implements the
MONKEY_TYPING constraint on augment and supersede declarators - various random cleanups and bugfixes
- added
Z metaoperator - lots of works on regex flags to unify them into a single
%*RX structure at parse time - makes it easier to do all of the lexical scoping in parallel
- can now remap run-time's
$?FOO variables to parser's $*FOO dynamic variables - otherwise, bugfixes, spec cleanup, and test cleanup
Allison:
- working on tickets
- updating the Parrot roadmap to match our Rakudo Star support plan
- working on the mini-language in NQP for a class assignment
- found a new Pynie developer who saw my talk at Pycon
- may be doing a Summer of Code project in it
- answering lots of questions on IRC and helping out with ideas
c:
- working on lots of little bugs for Parrot
- should have the method namespace bug fixed, with help from Andrew
- exploring some optimization possibilities
- should be able to merge the PCC refactor shortly
- Allison, see TT #1511
Allison:
- we need to add a new opcode, something like
set_want - call it to update the CallContext with expected return information
c:
- works a bit like Perl 5 there
- we could use that information for MMD, that'd be interesting
WTF? (Score:2)
WTF is surreal precedence?