This file is part of the Perl 6 Archive

Note: these documents may be out of date. Do not use as reference!

To see what is currently happening visit

Perl 6 Summary for the week ending 20030713

Welcome once again to the Perl 6 Summary, in a week of major developments and tantalizing hints.

Starting, as usual, with what's happening in perl6-internals

Targeting Parrot from GCC

Discussion in the thread entitled 'WxWindows Support / Interfacing Libraries' centred on writing a Parrot backend to GCC. (No, I have no idea what that has to do with the thread subject.) Tupshin Harper, Leo Tötsch and Benjamin Goldberg discussed possibilities and potential pit/pratfalls. At one point, Tupshin suggested emulating a 'more traditional stack-oriented processor' and I don't think he was joking...

Timely destruction and TRACE_SYSTEM_AREAS

Jürgen Bömmels' rewrite of Parrot IO is causing some problems with the garbage collection (IO handles are the canonical examples of resources that need timely destruction).

Leo tracked down the source of resource leak to a problem with handles being found on the C stack. Jürgen wasn't happy about this (he's not keen on the stack walking approach to garbage collection). He proposed that we get rid of the stack walk in favour of some other solution to the infant mortality problem and offered a few candidates. Leo said that he didn't like walking the C stack, going so far as to state that "Timely destruction and solving infant mortality don't play together or are mutually exclusive - in the current approach." Dan hasn't commented on this yet.

Parrot is not feature frozen

There was a certain amount of confusion as some old email with the subject 'Parrot is feature-frozen until Wednesday' made its way into a small number of inboxes sowing confusion as it went. Suffice to say, Parrot is not currently feature frozen, though Steve Fink did say that he was considering a point release once the imcc/parrot integration was complete. If Dan gets objects and exceptions finished, then it might even warrant a 0.1.0 version number rather than 0.0.11

Perl* Abstraction

Luke Palmer has "finally" started to implement his Infinity PMC and has noticed a lot of redundant code in the Perl* classes. He also noticed that Parrot doesn't seem to have the distinction between container and value that has been confusing people on the language list.

Fun with ParrotIO

First, Jürgen Bömmels sent in a patch to excise integer file descriptors from Parrot except when they are managed via ParrotIO PMCs. Leo applied this.

Clinton Pierce thought that this patch meant that a Win32 bug could be closed in the Parrot bug database. This sparked a discussion with Leo, and Jürgen, but I'm not entirely sure of the status of the bug...

Jako groks basic PMCs

Gregor N Purdy seems to have started working on Jako again, and checked in some changes allowing Jako to manipulate PMCs. People agreed that this was cool.

I want a Ponie!

The [email protected]'>p[email protected] mailing list was announced and I'll be summarizing it as of next week when I've joined, caught up, and generally recovered from America.

What's Ponie? Ponie is 'Perl On New Internal Architecture' or, as Thomas Klausner put it, "A version of Perl 5 that will run on Parrot", which was announced by Larry at his OSCON 'State of the Onion' address.

Discussion of Ponie on the perl6-internals list centred on the "What is ponie?" question, with a certain amount of "Why ponie-dev, not perl6-ponie?" thrown in for good measure.

Brian Ingerson announced that he'd set up a Ponie Wiki, Leon Brocard pointed at the use.perl story announcing Ponie, and your summarizer punted on writing a description of the project himself.

"!dl/" -- More on Ponie -- Ingy's Ponie Wiki -- use.perl announcement


Leo Tötsch checked in the beginnings of an exceptions system. Then he checked in the beginnings of an events system.

Meanwhile, in perl6-language

There were all of 6 messages, all of them discussing the effects of aliasing an array slice.

Perl 6 Rules at OSCON

No, wait, that should be Perl6::Rules.

For his last talk at OSCON, Damian spoke about Perl6::Rules, his implementation of Perl 6's rules system in pure Perl 5. And oh boy was it tantalizing. He showed us something actually running a large chunk of Perl 6 matching semantics, complete with handy debugging information, diagnostic dumping and all the other useful stuff.

When we were all gagging for him to release it to CPAN immediately, he told us that it wasn't finished yet; that he'd implemented it all during the week of OSCON, in 700 lines of code; that he was going on holiday for a month once he got home; and that the module would be completed and released to CPAN as time/money allowed and would be out by Christmas.

He didn't say which Christmas.

Trust me, we want this. A lot.

Acknowledgements, Announcements and Apologies

Hmm... this summary's later than last week's how did that happen?

Thanks to Darren Stalder and Cindy Fry, our kind hosts in Seattle; to Shiro san for some fantastic sushi on Sunday night; to Jesse Broksmith and Melissa Cain for being our Seattle native guides; to Ward Cunningham for a lift in his Jeep and for just being Ward; and to Casey West for reasons I promised not to go into in the summary.

For months now, I've been half joking about sending me jobs in the last little bit of this summary, but I really mean it now. If anyone's looking for an experienced OO Perl programmer and half experienced writer, I'm hunting work. Please get in touch at the address below.

As ever, if you've appreciated this summary, please consider one or more of the following options: