Perl 6 Design Minutes for 17 June 2009

chromatic on 2009-08-04T06:43:02

The Perl 6 design team met by phone on 17 June 2009. Larry, Patrick, Allison, Jerry, and Will attended.

Larry:

  • derived types from Buf for UTF-8, UTF-16, UTF-32
  • uncertainty of statement modifiers affecting $_
  • talked about using implicit blocks
  • decided that's a bad idea
  • to keep scoping rules simple, statement modifiers that are topicalizers must temporize $_
  • decided that typenames that are generic types have canonical name that fits into notion of adverbs (is Array :of(Int) instead of Array[Int]))
  • defined a .rotate method on arrays and lists
  • auto-incrementing strings not limited to alphanumerics
  • related to anything in <rangechars>
  • can include non-alphanumerics like dice
  • viv can duplicate gimme5 translation of operator precedence parser
  • next major thing to do is to duplicate translation of rules to long form that it uses to emulate in p5
  • after discussion with Daniel Ruoso, decided to add types into symbol table as if they were routine names (for example, &Int)
  • coercion functions really look like functions in the symbol table
  • hacked in new types utf8, utf16 into STD / corepad
  • added several other missing types
  • in parsing of declarators, some could be fooled; for example multi subfoo
  • most now require whitespace
  • changed variable redefinition message to say "Useless redeclaration" to indicate same variable (also an idea from Daniel Ruoso)

Patrick:

  • got a grant from Vienna.pm -- like Jonathan's -- a days worth of work on Rakduo == cash. Mainly a way to get some reimbursement for outliers that aren't covered by other grants. Thanks to Vienna.pm!
  • busy with personal trip, not a LOT done
  • sched for PVMW in Pittsburg, prepping
  • work on Rakudo build from installed Parrot
  • fixed Parrot bug concating Unicode/Latin-1
  • troubleshoot with chromatic on GC issues that caused leaks in Rakudo (GC was effectively disabled)
  • fixed () to return Nil, not empty list
  • string incr, decr, works on Unicode ranges, a la spec
  • refactor constant/container treatment; change default to immutable to simplify. (avoid changing value of True, etc)
  • seeing more GC errors with this refactor. Where running Parrot with GC disabled, Rakudo program works; without it, code completes. Related to recent work trying to clean up memory leaks/GC in Parrot.
  • need a lot of bisecting to figure out which Parrot revision did this.
  • getting ready for YAPC
  • tomorrow is Rakudo release #18, Pittsburgh. Was going to try to get someone else, but no one to take?

Allison:

  • finished editing book
  • still need a few final formatting tweaks before sending to printer
  • Will's POD testing scripts were incredibly helpful
  • unfortunately I have a concussion, so will miss YAPC::NA, but getting better.
  • can work on computer, a little distracty

Jerry:

  • working on PVMW with Patrick
  • that's about it
  • have a bit more time to hang out on irc
  • thinking about modules and library loading
  • people are asking "How do I find location of a (P5) module without evaling it?"
  • thinking about how to do this in P6
  • everyone seems to be progressing on GSoC

Will:

  • did minor Parrot cleanups
  • Andrew Whitworth did Parrot release yesterday (1.3.0)
  • talked with Patrick about gutting hand-rolled call chain that Partcl is using
  • came up with one case that can't be solved in Parrot today, but Rakudo has the same problem (lift)
  • when Rakudo has that solved, partcl can steal that
  • ran into issues because PMCs and Parrot classes aren't interchangeable

Jerry:

  • Larry, are you doing the normal talk?

Larry:

  • talk is about error messages. (p5 -> p6)

Patrick:

  • he really wants to know how long your talk is

Larry:

  • if I go over, you can throw an exception for me to handle