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 2005-12-05 through 2005-12-12


Welcome to another Perl 6 summary. This week, like last, Parrot has produced the highest volume of emails. Fine by me, Parrot tends to be easiest to summarize. This summary is brought to you by Snow (the latest soft toy in the house). I would say you should get one, but apparently Borders stores everywhere are sold out of them. He is quite soft and a little mischievous. Maybe he belonged to a samurai once...

Perl 6 Compiler

Context Confusion

Mike Li wondered how to make his sample code work in Perl 6. Jonathan Scott Duff pointed out that the part he was curious about, was correct already. Score one for Perl 6.

Unbracketed Text from Text::bracketed

Allison Randal wanted to be able to access the text within PGE::Text::bracketed's match object. Patrick made it work, and Allison happily used it.

Security Model

Bryan Burgers wondered how Parrot would support security. Luke Palmer pointed him to the p6i list and explained that Dan did have a plan for this that he couldn't recall. I recall something about VMS and having active and allowable capabilities. It sounded really cool when I read it.


Build Failure

David Dyck managed to make the build fail on his bizarre setup. Leo fixed it.

src/revision.c Dependencies

Leo discovered that src/revision.c is missing some dependencies. He would love it if someone fixed that.

Documenting .lex Syntax

Klaas-Jan Stol documented the new syntax for lexicals. Jerry Gay applied the patch.

Multidimensional Arrays

Roger Browne found that he could not make multidimensional array access work with PMCs. Leo said that should be filed as a TODO.

Directory Reorganization

Jerry Gay has made good progress spearheading the directory reorganization of Parrot. Rather than give you a bunch of links to emails that are essentially the same, I will skip them, but thank you Jerry.

make test Error on OS X Tiger

Jason Gessner reported a test failure on OS X Tiger. Warnock applies.

C3 MRO Test

C3 MRO (C3 P0's younger brother) recently underwent his factory acceptance test and will be released into the world. Like his older brother, he also speaks fluent Tibetan. On an unrelated note, Stevan Little added some test for the C3 method resolution order used in Parrot.

Global Store Hash

Klaas-Jan Stol wanted to access the global store hash directly. Leo showed him how.

Release Goals

Leo kicked off a brain storming session for what to focus on for the next release. Brains promptly began storming.

Sun4 JIT Fix

Andy Dougherty submitted a big fix to make Sun4's JIT link again. Leo applied the patch.

:flat and :slurpy issues

Bob Rogers was having trouble making Parrot eat linguine because it would not mix :flat and :slurpy arguments. He also found that the problem was do to premature optimization (actually a PREMATURE_OPTIMIZATION define) and submitted a fix and test. Leo thanked him and applied them.

Parrot 0.4.0 Luthor

Leo announced the latest release of Parrot 0.4.0 aka "Luthor". There was much rejoicing, but I was left wondering where Leo comes up with these release names.

loadlib Cleanup

Leo has been hunting some uninitialized memory bugs in Parrot's library loading code. He has been having a difficult time finding the problem, and thus is looking into a general code clean up to make the problem easier to find (or possibly just fix it). Jerry Gay said he would make it work on windows, but no one volunteered for the main portion of the work.

languages/regex/Makefile is not Generated

Jerry Gay noticed that languages/regex/Makefile really ought to be a generated file. He opened a TODO for it.

Fix Parrot IO Test 23

chromatic the ever uncapitalized proferred a patch for a failing Parrot_IO test. He seemed to feel that someone else ought to review it as he was not 100% on it. Warnock applies.

load_bytecode Fails Outside of Parrot

Bob Rogers noticed that load bytecode didn't work when not in the Parrot directory. Leo mistakenly fixed a different problem before he fixed this one. Sounds like a win/win to me.

Tcl Win32 Trouble

Jerry Gay noticed a problem building Tcl on Win32. Fran\xE7ois Perrad pointed out an old patch from Nick Glencross which apparently solves the problem. Warnock applies.

abs2rel Issues

Alberto Sim\xF5es spotted a problem with abs2rel. People seem to like the patch so it was applied.

OS X Build Errors (Reprise)

Brent Fulgham noticed some build errors on OS X using XCode 2.2. Leo pointed out that he had a stale parrot installed and that the two were not co-installable.

Web Docs Broken

Joshua Hoblitt supplied a patch fixing the docs after the recent tree reorganization. Will Coleda applied it.

Parrot's Test Pod

Alberto Simoes provided a patch which fills out tests.pod a little more. chromatic applied the patch.

make smoke Progresses

Alberto Simoes made make smoke provide progress. Will Coleda applied the patch.

JIT on FreeBSD

Joshua Isom reported a broken JIT on FreeBSD. Leo promptly fixed it.

runtime/parrot/include/*.pasm Ought to be Made

Leo opened a ticket for runtime/parrot/include/*.pasm . Currently they are generated by They ought to be generated by make with the correct dependencies.

c< make smoke > JIT Easier

Alberto Sim\xF5es posted a patch to make make smokej run smoke testing with the JIT. Warnock applies.

MSVC Compiling

Ron Blaschke posted some informative summaries of test results using Visual Studio 7.1 and 8.0. People generally found it useful.


Joshua Hoblitt suggested updating submission.pod to point out the CREDITS file. Chip agreed that would be a good idea.

Library Loading Without Duplicates

Leo provided rudimentary support for avoiding loading the same bytecode file twice. Chip agreed that it was a good idea.

BigInt Needs Your Tests

Jerry Gay created a ticket at Leo's suggestion. BigInt needs both tests and design. You should add those tests.

Parrot Shootout

Brent Fulgham announced that he had added Parrot to the great language shootout. This led to an inevitable round of optimizations as well as a few more of the benchmarks being written.


Jerry Gay's directory reorganization veered off to talk of imcc's PAST. Bernhard Schmalhofer noted that punie also has a different PAST. Too many acronyms...

Solaris Threads

Erik Paulson noticed that Parrot's threads on solaris won't actually cross CPUs. Jack Woehr explained that it was an issue with how Solaris implements POSIX threading.

Multiline Macro Bug

Joshua Isom found a bizarre behavior that he felt was likely a bug involving multiline marcos and commas. Consensus it that it should be clarified and documented at the very least.

Perl 6 Language

Test::fail Problems

Gaal Yahas noted that Test::fail needs re-examination as fail is a built-in in Perl 6. Discussion ensued, although I don't think an answer was posed.

Perl5 to Perl6 Translator

Peter Schwenn asked what progress was being made on a Perl5 to Perl6 Translator. Larry provided an update of the one that he was working on. Based on Larry's update, I can bet that the Perl6 to Perl7 translator will be FAR easier than the 5 to 6 one.


Daren Duncan was having trouble working out exactly how to work with $!. Larry and others provided some answers, but I don't think any were final.

Module Versioning

David Green wondered how different module versions and APIs would be handled in Perl 6. Larry provided answers.

Regex Captures into Locals

Brad Bowman wondered if there was a good way to have regexes capture into newly created local variables. Currently, no, you must predeclare them.

Threading Thoughts Through the Ether

Ron Blaschke posted a few of his thoughts and a few links on threading in languages. Sam Vilain posted a pointer to the S17 draft that includes atomic blocks and co-routines.

The usual footer

To post to any of these mailing lists please subscribe by sending email to <[email protected]>, <[email protected]>, or <[email protected]>. If you find these summaries useful or enjoyable, please consider contributing to the Perl Foundation to help support the development of Perl. You might also like to send feedback to [email protected] -- The Perl Foundation -- Perl 6 Development site -- Parrot Blog aggregator