The Perl 6 design team met by phone on 02 January 2008. Larry, Allison, Patrick, Will, Jerry, Nicholas, Richard, and chromatic attended.
Larry:
- revising specs lazily on demand
- seems to be my main mode of operation these days
- being available for questions
- managed to get Geneva married off
- we're pretty much over the holiday descent of relatives
- should be able to get back to heavy duty work soon?
Allison:
- working on the concurrency scheduler
- more stuff after events
- integrating some new systems into it
- ripping out the old implementation
- managed to change a default run of Parrot from running three separate threads to one by default
- only split off multiple threads when you spawn them now
- just checked in one change
- fixed a couple of intermittently failing tests
- had some very helpful problem reports from multiple platforms
- everything but the old STM tests are still intermittently failing
- I have a solution for that now
c:
- was the Helgrind output helpful?
Allison:
- it told me exactly for sure that it was NCI callbacks that were causing the failures
- also working on getting the Debian stuff ready for their first review
- hopefully we can get our first Debian package soon
- there's one bug report on IA-64 from Parrot 0.4.5
- might not apply anymore
- it was a PGE problem
- we need to verify that first
Patrick:
Allison:
- you can set up a Debian Sid chroot if you have access to IA-64 running Ubuntu
- Colin says Debian has a few servers they make available for this
- that's the only issue preventing an upload today
Will:
- working on a new JavaScripty interface to look at RT tickets
- have a proof of concept right now
- want to get some feedback from more people right now
- basically Patrick asked for a nicer way to find tickets to work on
- might talk to Robert about moving that over to a perl.org server to handle more traffic
Patrick:
- took a few days off for Christmas to build a 5000 piece LEGO set
- that was fun
- we're a LEGO family
- we have a nice Millennium Falcon
c:
- I just want to bask in that for a second
Patrick:
- I'll post pictures; it's pretty cool
- adding more features to the perl6 compiler
- the biggest work there is a couple of documents that describe how the compiler fits together
- hope to cut through the confusion that people have when they hear PGE, TGE, NQP, etc
- hopefully that can be the start of the PCT documentation
- started refactoring the test suite
- dividing the tests up by Synopsis
- it's still early in the process
- it seems to work nicely so far, at least for me
- spent some time working on pbc_to_exe
- the files that it creates can run from anywhere
- now we have a
make perl6
target that creates a perl6
binary
- it doesn't work with an installed version of Parrot yet
- fixing that requires fixing the installation target
- still a little messy
- asking a few questions here and there about the design things
- have another journal post coming up later today
- also have a monthly report for the Mozilla Foundation grant coming too
Jerry:
- NQP now handles optional, named, required, and slurpy parameters
- I expect to add that to perl6 shortly
- perl6 now handles base conversions for integer arguments
- working on fractional conversions now
- did some work on
pbc_to_exe
, but it still needs some work on Win32
- I'll take some hints from the dynpmc implementation on finding the Parrot shared library
- found and fixed some small bugs
- added some 64-bit platform conversion warnings under MSVC
- there are thousands of warnings that we need to fix before we can get a 64-bit build on Windows
- I expect that most of those are from three or four root causes
- the biggest thing is that the size of an int and a size of a pointer are different
c:
Nicholas:
c:
- found and fixed some nasty memory corruption bugs
- intermittent but nasty
- I also checked in the
pbc_to_exe
code that Jerry and I worked on a while back
- I think we're close to getting it to work on Windows
- have some weirdness with dynamic linking on Mac OS X that I just don't understand
Nicholas:
- I branched the 5.11 branch for Perl 5
- committed the patch that adds
each
and values
on arrays
- we may make that available under Perl 5.10.1
- also made regular expressions an SV type
- simplifies things
- 5.10 is getting good reviews
- there is one performance hit because of a list copy op pessimization
- don't know when we'll start thinking about 5.10.1
Richard:
- grappled with the Perl 5.10 release
- specifically getting the press releases out there
- had a domino effect on people pushing each other to do things
- thanks to Nicholas for leaning on me
- I leaned on Andy a little bit
- Andy managed to get some good bits out there
- it made the rounds
- for any given misinformation on any site, I think that was more the reporter misinterpreting things than Andy misrepresenting them
- for example, "TPF released..." versus "TPF announces the release..."
- need to follow up with the people doing translations
- there was a big push in the German language media
- we have a Dutch translation, promises on French, Portugese, Chinese, and Japanese
- I'll collect the various multi-lingual press releases into a canoncal page that people can link to in perpetuity
- the XAMPP leader mentioned that he's rolling up a new release
- he said that he wasn't going to include 5.10 because it was a development release
- I talked to him and he'll include 5.10 in the January release
- he explained his reasoning, and he's right
- our language on this is all screwy to an outsider
- "stable", "latest", "production", and "release" versions are all mixed up on various sites like cpan.org and perl.org
- still working on hackathon funding
- also working on funding funding
- as part of the Mozilla Foundation grant, we promised to pursue further funding
Will:
- are we sure that the
pbc_to_exe
issues are due to the dynamic build or a static build?
c:
- it's the same issue that Tim Bunce was looking at with Parrot::Embed
- the default build is static
- if you build dynamic things should work
Will:
- dynamic works on my Intel Mac
- I'll try on PPC and then if it works we can switch the default
Nicholas:
- we've been very reluctant to declare on the day and date of the release that a release is ready for production
- we don't know if there are any scary bugs
- this performance regression might be nasty
c:
- I'm not much interested in protecting people from their own stupidity
- if you upgrade stable versions of Perl without testing it on an application you rely on, you should know what you're doing
Richard:
- seems analogous to people who said "2.4 kernel is out; I'll wait for a few releases"
- the counter argument may be "If that's how we're to treat it, why not call it 5.9.6?"
Nicholas:
- and if everyone does that, it's an arms race
- if no one tests it, we can't catch these things
- we could have caught them six months ago if someone just tried it
Richard:
- might there be some internal inconsistency and misunderstandings?
- are they consistent or inconsistent?
Patrick:
- you can't get it right so that everyone understands what's going on
- you can get it wrong
- and this text is wrong; people will read that 5.10.0 is a development release
Richard:
- and there's "latest is 5.10" versus "latest is 5.8.8"
Allison:
- call 5.8.8 "previous stable release"
- say that 5.9.5 will become 5.11
- otherwise they read that 5.10 is the new development release
Patrick:
- maybe get rid of the word "latest"
- it's not helpful
- maybe recommend 5.8.8 for production environments
- say that 5.10 is a stable release
- development releases start at 5.11
Richard:
- who has commit access to these sites to fix it?
Allison:
Nicholas:
- Jarkko runs the CPAN front page
- dev.perl.org is Ask and Robert
Richard:
- perhaps I should rewrite all of this
- contact Jarkko with the revision and ask him to consider using it
Nicholas:
- there was a question about smart match when one side or the other is a blessed reference
- I think it ignores the fact that it's an object
- it's probably easier to write down and ask Larry that way
Jerry:
- what does perl6 need before we can welcome users to hack on it?
Patrick:
- anyone's welcome to hack on it already
- I'd like people to submit patches in Perl 6 code instead of PIR wherever possible
- but we don't have an example of doing that
- we need an example we can point to
- that was going to be my task for yesterday
- I have to decide how I want to integrate the code written in Perl 6 to the compiler
- is it code loaded or compiled into PBC?
- where should the code go?
- we may refactor the directory structure of the compiler one more time
- the mixture of PIR and Perl 6 seems to confuse people
- just want to encourage people to write library functions in Perl 6
- that's what we need an example of
Jerry:
- people ask certain questions on one channel or another
- should we set up a different #perl6 channel
- should we send people to #perl6 on freenode?
- where should they go?
Patrick:
- I find it hard to switch between the two channels
- trying to keep up with them, I spend most time answering questions and have to shut off the windows to get work done
- so I spend more time on #parrot
- I can hang out on #perl6, but I feel like I'm not too productive when I do
Jerry:
- some people have the perception that #perl6 is about Pugs
- should that perception change?
Patrick:
- probably
- where do people hang out for Perl 5 questions?
Jerry:
- #perl on freenode answers questions
- #perl on perl.org...
c:
Nicholas:
- #london-pm is good about answering questions
- but you have to know where it is
Allison:
- #perlhelp on perl.org is good
- there a #perl6 on perl.org, with three people in it
Jerry:
- just something to think about
Patrick:
- if you go to the Perl 6 wiki, everything pointed to Pugs
- as people read the journal posts, they find the wiki and get pointed to Pugs
- I cleaned up some of that
- but I don't know where all of the questions and confusions are
- I'm trying to get more people onto the wiki to clean up their questions
- just get them to add their questions there
- it's another source of confusion for historical reasons
- we need to break the synonymity of Perl 6 and Pugs
- it'll need fixing over time
Larry:
- not entirely sure that calling your implementation
perl6
is conduicive to clarity too
Patrick:
- I agree and think about that sometimes
Larry:
- I'd like to see that changed
c:
- people really do want a
perl6
binary though
Larry:
- that doesn't have to be the name of the implementation though
- there should be a binary named
perl6
- but it should be retargetable
- there should be consistency of invocation though
- we haven't talked about that yet
- but what chapter is
perlrun
?
- I'll think about that this week