Perl 6 Design Minutes for 26 March 2009

chromatic on 2009-04-03T23:05:13

The Perl 6 design team met by phone on 26 March 2009. Larry, Patrick, Jerry, Nicholas, and chromatic attended.

Larry:

  • writing talks for my upcoming trip
  • leaving for NY and then Boston tomorrow morning
  • talking at Bloomberg, Columbia, Harvard, MIT, and Yale

Patrick:

  • picking up any degrees?

Larry:

  • probably Farenheit
  • speaking of heat, jumped in on the logo discussion
  • installed Camelia
  • the discussion is dying down now
  • worked on the sequential output of the regexp matches with .caps and .chunks methods
  • they now come in key/value pairs
  • they key of each match was the name it was bound to
  • just a list of pairs, so there can be duplicates
  • speculated about where we want to go about type narrowness
  • Jonathan had a thundering apoplexy
  • made that a post-6.0 decision
  • we'll allow only one type constraint parameter for 6.0 to allow us to extend the syntax afterwards
  • to allow multiple constraints, define a named subset type (for now)
  • removed prefix int from the standard grammar
  • most of my actual hacking comes from the desire to rewrite gimme5 in viv
  • lots of cleanup
  • fleshing out a lot of spots where things didn't get attached quite right in the match tree or AST or caps
  • good for finding lots of little bugs
  • the text in the nibbler now comes back as a match object, not just a string
  • easier to call methods on when iterating through caps list
  • nouns and values are now syntax categories
  • derived grammars can more easily add new nouns and values
  • added the first implementation of ww rule
  • still buggy and chews up all of my memory
  • not used in STD yet

Jerry:

  • student application period is open for GSoC
  • closes on Friday, April 3
  • we're looking for students and mentors

Patrick:

  • enjoyed nice weather on the west coast
  • spent several good days at Disneyland
  • caught up on email otherwise
  • released Rakudo Developers Release #15, codename "Oslo"
  • that went smoothly; it's very easy to do releases
  • will extract that into a release managers guide, like Parrot has
  • will delegate releases to other people over the next few months
  • reviewing and commenting on patches from other people
  • mainly preparing for major PGE and PCT refactors
  • will bring them up to date with the Synopses changes
  • that should progress quite a ways on my Hague grant

Nicholas:

  • Rafael's making great progress on smartmatching for Perl 5.10.1

Patrick:

  • if you have a method declared without a parameter list, does it get @_ like a sub, or no parameters?

Larry:

  • I've been thinking it comes in the same way Perl 5 does it
  • hadn't bothered to try to think about it the other way

Patrick:

  • Rakudo assumes @_

Larry:

  • but it leaves out the invocant
  • that's the difference
  • I haven't decided
  • it's further from what a Perl 5 programmer might expect
  • but it might be more useful

Patrick:

  • we have three interpretations
  • the Settings and Synopsis 32 show people treating no parameter list as "no parameters"

Larry:

  • there is an invocant and no additional parameters
  • () is that

Patrick:

  • they treat a missing parameter list as that

Larry:

  • I think that's wrong

Patrick:

  • Rakudo's interpretation is that you get @_ which does not include the invocant
  • the other interpretation is that you get @_ which does include an invocant
  • I need to add parens to those documents then

Larry:

  • probably the correct answer is that it has to include the invocant
  • we've said that the invocant is always just the first parameter
  • also the interchangeability of sub and method bodies, so you can alias a method to a particular multimethod

Patrick:

  • if you have a block with @_ and $_, does the former include the latter which was the first argument to the block?

Larry:

  • they're both implicit?

Patrick:

  • neither explicitly given as parameters, but are mentioned (implicitly or not) in the block
  • does @_ include a $_ parameter?

Larry:

  • and how would you write that signature?

Jerry:

  • \_? yuck

Patrick:

  • I don't need an immediate answer on that
  • I'll turn Moritz's ticket into a spec bug (not specified), not a Rakudo bug