31 Mar 2010 chromatic   » (Master)

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.


  • 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


  • 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


  • 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


  • we need to add a new opcode, something like set_want
  • call it to update the CallContext with expected return information


  • works a bit like Perl 5 there
  • we could use that information for MMD, that'd be interesting

Syndicated 2010-03-31 21:17:44 from pudge

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!