Perl 6 Design Minutes for 19 November 2008

chromatic on 2008-12-01T19:57:52

The Perl 6 design team met by phone on 19 November 2008. Larry, Allison, Patrick, Jerry, Jesse, Will, Nicholas, and chromatic attended.

c:

  • will let someone else discuss the Parrot Developers Summit
  • released Parrot 0.8.1 yesterday
  • mostly smooth, but didn't get in all of the features we wanted
  • looking at the plan for the next few months to figure out my next features

Patrick:

  • even if Parrot 0.8.1 didn't give all of the features we wanted, it was a useful deprecation point
  • lots of things merging into trunk today
  • the Parrot Developers Summit went very well this weekend
  • concentrated on bugfixes and getting lexicals to work
  • we were 95% of the way on Saturday
  • then I added one last feature, and everything fell apart
  • reviewing how Parrot manages contexts to figure that out
  • something's wrong with the collection of contexts
  • haven't worked on it much since Sunday, but working on it again today
  • updated the Rakudo roadmap in the Parrot repository
  • that looked pretty good
  • otherwise, little changes here and there
  • closed 10 or 12 tickets yesterday
  • more of the same coming up for me

Jerry:

  • organized the PDS over this weekend
  • most important thing we did was create the roadmap for Parrot 1.0
  • release date will be March 2009
  • it'll be a stable platform for high-level language implementors
  • Allison, chromatic, and I posted more details on use.perl.org and parrot.org
  • the most visible work product is the Parrot roadmap, which lists important and critical tasks for Parrot 1.0 and beyond
  • haven't made much progress on my grant in the past week
  • turning back to that now that the conference is over
  • hope to do a whiteboarding session with a couple of local developers later this week
  • then I'll have a draft for review

Allison:

  • extremely pleased with the way the Summit went
  • makes a big difference to be able to say that we can deliver 1.0 in March
  • seems to be making a difference internally as well
  • working on the IO architecture
  • about to do the first merge back to trunk here shortly
  • have the copyright assignment from TPF to the Parrot Foundation as well

Jesse:

  • is Rakudo part of that?

Allison:

  • it's explicitly excluded
  • that copyright stays with TPF

Jesse:

  • but NQP stays with Parrot?

Patrick:

  • as does PGE and the Parrot Compiler Toolkit

Larry:

  • the tryfile program now reports time and memory usage of the compilation it does
  • spent a lot of time refactoring the LTM to get rid of string processing and storage
  • switched over to a trie implementation, which is closer to a DFA implementation
  • uses less memory and is faster
  • not a great deal of either, but it's progress
  • a bad bug in STD's operator precedence parser
  • built nested pre- and post-fix operators inside out
  • fixed that and hopefully improved the algorithm at the same time
  • building STD now builds a Storable grammar of all of the lexers
  • should start up faster now
  • lexers can now reuse the patterns of the lexers of the parent class if they haven't changed
  • cuts down memory usage
  • refined the LTM tiebreaking rules as part of the trie switch
  • if there's a tie, the first tiebreak is "which if the two rules had more literal characters matched at its front?"
  • if you match a specific keyword exactly, it takes precedence over a generic rule which matches \w*
  • seems to be DWIMmier
  • if that fails, it falls back on order tiebreaking
  • thinking a lot about iterator semantics and the API, mainly at Daniel Ruoso's request
  • several different ways to go
  • several different use cases
  • probably a matter of allowing any of those semantics underneath, but picking a good default
  • probably neither strictly lazy nor strictly eager
  • about four different gradations of laziness versus easiness

Jesse:

  • attempting to figure out where we are with Synopses and spec tests and implementations
  • when Parrot migrates to Trac, does Rakudo migrate to RT?

Allison:

  • it stays in RT on the perl.org infrastructure

Jesse:

  • is there a broad announcement of the plan?

Allison:

  • the roadmap is the main written information we produced
  • we should write out the general migration too
  • other languages will make their choices too as they move to public repositories

Patrick:

  • before the March release, Rakudo will move into its own repository on perl.org

Will:

  • in general, ripping stuff out of Parrot
  • trying to make ParTcl go faster
  • if anyone wants to help with that, let me know

Jesse:

  • Tim Bunce has been doing great in Perl 5
  • and he's positive about Parrot

Allison:

  • profiling tools aren't on the list for 1.0
  • but if they get done before then, great!

Nicholas:

  • did someone name S17 from "Threads" to "Concurrency"?

Jesse:

  • the canonical source for the Synopses is going to move to the Pugs repo

Patrick:

  • there will be announcements to the mailing lists

Jerry:

  • will there be any changes to version numbers and date updates?

Patrick:

  • they stay up to date pretty well
  • people can be mindful of that
  • we can put commit hooks on them there too

Jesse:

  • we won't meet next week
  • I'll send mail confirming that