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 2004-10-01 through 2004-10-17


Welcome to my first summary. Since I am relatively new at this game, I will just steal Piers's approach and start with Perl6 internals. But before that let me warn you that my ability to make strange characters with accents is not great, thus please do not be offended if I don't include them in your name. If you want them to appear in the future, a quick email about how to make them appear using a US qwerty keyboard and Mozilla should suffice.

Also, does not seem to have picked up perl6.compiler yet, so iw ould be s

With that legal disclaimer out of the way onward to


Configure problems and Improvements

Leo noticed that Configure doesn't rebuild things correctly. Takers welcome. Nicholas Clark added a --prefix option for the make install target.[email protected][email protected][email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

Non-core module dependency

Joshua Gatcomb accidentally introduced a dependency on Config::IniFiles. Since it is implemented in pure perl he offered to add it to the repository. Warnock applies.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=100

OpenBSD troubles

Jens Rieks found and fixeda coredump on OpenBSD. Thanks, Jens.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Threads on Cygwin

Joshua Gatcomb discovered some trouble with threads on Cygwin. It seems that there are problems with both the thread implementation, and the tests not be generous enough if accepting out of order input. Still unresolved, I think.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Parrot IO is not quite threadsafe

Nicholas Clark discovered a double free in the IO system. While his problem was solved by Jens, the underlying problem still remains.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

make install portability issues

Nicholas Clark asked why the install taget was not portable. Steve Fink responded that it was a quick hack at the time and made it better.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75


The namespace thread continues to churn. It is slowly making progress, but I beleive there is a fair amount of people talking past eachother going on. Perhaps Dan could step in and provide one final state of the namespaces?[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Parrot Abstract Syntax Tree aka PAST

Sam Ruby decided to pick up the Python on Parrot ball. To that end he enquired as to what PAST is. Leo provided answers and help. Will asked for more help. Leo once again provided.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

JIT for non-branching compare opcodes.

Stephane Peiry provided a patch to JIT some more opcodes. Leo applied. Stephane then provided a patch with tests. Jens applied that one.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Comparing Pythons

Sam Ruby posted a link comparing various pythons and there conformance to a test suite. Sam Ruby: Comparing Pythons


Dan admitted confusion as to what exactly metaclasses are/do. Papers and explanations were provided by Aaron Sherman, Michael Walter, and Sam Ruby.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Plain Old Hash

William Coleda wondered if Parrot had a basic hash implementation (not a PerlHas). Dan said "D'oh!" and asked for takers. Will Coleda added a TODO.[email protected][]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Parakeet 0.3

Michael Pelletier's language Parakeet has hit 0.3 and been added to CVS. Everybody should play with it.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

make install thoughts

Leo conjectured about creating a parrot_config.c which would encode all of parrot's configuration. Then parrot would know its own config. Jens suggested letting miniparrot generate it; Leo agreed.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

more piethon

Dan's register spilling problems give him free time. He used it to work on piethon a little.[email protected][]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Priviledge implementation

Felix Gallo posted some questions/thoughts with respect to priveledges. While Leo addressed Felix's question about the location of source files (and provided a nice plug for vim). The others all remain Warnocked.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

make in languages/TCL

Matthew Zimmerman supplied a patch to fix TCL's make. William Coleda modified and applied it.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75


Andy Dougherty provided a patch to remove some old files from the manifest. Steve Fink applied it.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Parrot 0.1.1 "Poicephalus"

There was a little talk about names. Then a little talk about getting it posted to In the end the 0.1.1 release did happen and even made it to /. Thank you to everyone who contributed.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Data::Dumper TODO

Will Coleda added a TODO for Data::Dumper. Apparently it cannot dump FixedPMCArrays. Will conjectures that there are probably other new PMCs it cannot handle either. Patches welcome.[email protected]

Emacs, XEmacs, and pir-mode

Jerome Quelin kicked off a thread that resulted in emacs getting better pir-mode support. Thanks to all involved, but I will continue to use vim ;-)[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

A %=head3 B

Dan noticed that we did not have support for "%=" in PIR. There was some confusion as several people rushed to the rescue. In the end, the problem was fixed. Thanks all.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=75

Pushing and Popping Arrays

Will Coleda wondered why he could not push onto a FixedArray. The answer was quickly provided that Fixed means that its size cannot be modified, not that it is bounded. This answer seemed reasonable enough to him. He then went on to ask why he could not pop a ResizableArray. The answer is of course, because it is not implemented yet, patches welcome.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

imcc reserved words

Sam Ruby wondered how to create a sub name "num" in imcc. The answer, no, and a workaround was provided by Jens.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

Quiet vs Loud build system.

Andy Dougherty provided a patch to improve the build system. Steve Fink applied it. Leo disliked it. Consensus seems to be not to use it.[email protected].edu&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

Cygwin bugs

Joshua Gatacomb has been fighting with Cygwin getting Parrot to work. Apparently we trip a few of its bugs. Read more if you like.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

Python concerns

Jeff Clites raised some concerns about dealing with Python's bound and unbound methods. There was some discussion about it. In the end, it just means a little more work.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

Makefile cleanup

Will submitted a patch cleaning up the makefile. There was some back and forth about what parts of the patch should be kept.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

Win32 issues

Ron Blaschke provided a few patches for Win32 which Jens and Leo applied.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

dynamically loadable modules

Steve Fink spent some time chugging away at dynclass and dynamically loaded modules. There was some discussion of proper variable names and some working out of problems. Friendly reminder, when in doubt "make clean; perl; make"[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

ICU without --prefix problems

Steve Fink was apparently having troubles with ICU and locating necessary data files. Leo confirmed that it is a problem.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50


Jens has apparently had success working with MinGW. Yay![email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

ICU issues

Will had some ICU issues. Various suggestions and solutions were attempted. Any success?[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

locals inside macros

Will wants .locals inside .macros. Apparently it can only be done if your macro only takes PMCs.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=50

t/pmc/signal.t improvements

Jeff Clites provided a patch with improvements to t/pmc/signal.t. Warnock applies.[email protected]

coroutines and --python

[email protected] (whose last name I cannot find) wondered about the --python flag. The answers and discussion that followed indicate that it was a quick and dirty hack. Eventually it will be gone and Python will have PMCs of its own (relatively quickly if Sam Ruby has anything to say about it).[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

small patches

Sam Ruby fixed a small problem in PerlInt. Jeff Clites fixed a bug and cleaned some warnings in darwin/dl.c. He also fixed some tests and added a Parrot_memalign function for OSX. Stephane Payrand provided a patch to allow multiple identifiers on one line in pir. Stephane also added a get_representation op. Bernhard Schmalhofer added support for syncrhonous callbacks. Ion Alexandru Morega added more functionality to complex PMC. Leo applied the patches.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected][email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected][email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Link failure on amd64

Adam Thomason pointed out that amd64 lost a vital link flag somewhere in the shuffle.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

non-vtable methods on buildin pmcs

Sam Ruby wondered about allowing pmcs to implement additional non-vtable methods. Leo thought it would be good. Sam provided a patch, chromatic tweaked it, and Leo applied it.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0


Jens wondered what happened to Apparently it died a while back and has not yet been resurected. Robert Spier also noted that it was a little difficult to deal with and was interested in creating a new one. He is also looking for help in this endevor.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

register stacks [again]

Leo has once again pushed forward his idea for register stacks and been Warnocked.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

ncurses troubles

Andy Dougherty had some ncurses trouble. In particular, one of the error messages was exceptionally unhelpful. Now it is a little more helpful.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=25

coding standards

Leo would like to draw everyones attention to docs/pdds/pdd07_codingstd.pod, and the fact that it should be applied to perl code where appropriate. Thank you.

rx_compile and FSAs

Aaron Sherman has some ambitious stuff in the works with respect to regular expressions. Stay tuned for details.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Single character from stdin

Matt Diephouse wants to know how to get a single character from STDIN. The answer seems to be no, but this has triggered Dan to go back to the IO/Event doc. Best of luck Dan.[email protected][]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0 samples

Paul Seamons noticed that some of the samples on are really out of date. Will Coleda agreed and suggested that they should all be updated to pir too. Takers welcome.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

New comers

Pratik Roy wondered if he could join into the work on Parrot or if he would remain an outsider looking in. Many people rushed to suggest ways in which he could help. So, please don't feel afraid to contribute. At worst a patch of yours will be turned away with an explanation as to why. At best, you will start being referred to by first name only in the summaries.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Python and Perl interop

Sam Ruby wondered about how Python and Perl woud interoperate. Leo, Steve Fink, and Thomas Sandlass has ideas and suggestions. I think the answer will be magically.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0


Ovid pointed the world at Inline::Parrot. It looks cool.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Problems with 0.1.1 on x86-64

Brian Wheeler had a problem with Parrot on x86-64. He provided a patch, but Leo couldn't apply it and asked for a resend. Silence thereafter...[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Bug in factorial?

James Ghofulpo wondered if the Parrot examples page's factorial program was supposed to truncate output. Warnock applies.[email protected] autodetection

Sridhar discovered that would fail if he told it to "--cxx=/usr/bin/g++-3.3"; Jens pointed out that he would also need to tell it "--link=g++-3.3".[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

Parrot Forth 0.1

Matt Diephouse release Parrot Forth 0.1. It has many cool features. Nice work. Perhaps this should go into languages/?[email protected]

.return directives

Stephane Payrard wants to remove the multiple meaning of .return to provide a cleaner path forward. Everyone agrees.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

YAGCB (Yet Another Garbage Collection Bug)

Will thought he had turned up another GC bug with TCL. This time he hadn't and it was his fault. Can win them all I guess.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

testing a PMC for truth

Will wondered how to determine a pmc's boolean value. Leo pointed him toward istrue.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

grsecurity problems

Christian Jaeger noticed taht grsecurity was stopping on Parrot's attempts to execute jitted code. Leo pointed out that we already have support for doing the right thing, we are just failing to detect that we need to.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

PMCs and inheritance

Sam Ruby wanted inheritance for PMCs. Apparently what we really need is a scheme for multiple inheritance of pmcs. Sam Ruby supplied several patches, parts of them got applied by Leo.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

C++ and typedef struct Parrot_Interp *Parrot_Interp don't play well

Jeff Clites discovered that, on OSX, we get troubles because C++ does not like typedef struct Parrot_Interp *Parrot_Interp. We need C++ to link ICU. Fortunately, that particular typedef is out of the ordinary and violates our normal conventions. So Brent 'Dax' Royal-Gordon threatened to apply the (fairly large) fix. Will tested Brents patch and gave it the thumbs up.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

JIT, exec core, threads, and architecture proposal

Leo proposed mandating that all JIT must be done interpreter-relative. This allowed some happy optimizations including constant table access. General resonse was favorable.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0 --tree option

Bernhard Schmalhofer submitted a patch fixing the aformentionedc --tree option. No answer yet, but it has not really been long enough to officially invoke Warnock.[email protected]


Jacques Mony asked for help/advice porting Parrot to unununium. No responses yet...[email protected]

Perl6 Compiler

google groups still doesn't have Perl6 Compiler, so this section won't have links. Sorry.

Compilation Paradigms

Jeff Clites put out a request for some basic P6 examples and resultant bytecode so that everyone would be on the same page. Warnock applies.

Interals, rules, REPL

Herbert Snorrason had some basic questions about Perl6's interaction with Parrot. He also wanted to know about whether he should be playing the re_tests or if that was wasted effort. Finally he wanted to know about read-eval-print loops. Sadly Warnock applies across the board.

Perl 6 Language

Google groups has nothing for Perl6.language between October 2 and 14. Is this really the case? (I had not signed up until shortly before volunteering to summarize.) If there is email that I just can't find, I would be appreciative if someone could produce a summary or a pointer to the missing mail for me. Thanks.

updating multiple rows

Nitin Thakur attempted to de-Warnock himself. Apparently unsuccessfully. Sorry, Nitin.[email protected]&prev=/groups?hl=en&lr=&group=perl.perl6.language

Perl 6 Summaries

Piers raised the white flag after several years as a wonderful summarizer. Having now just finished my first summary, let me say thank you for all of your hard work and if you ever want the job back its yours ;-) I hope you don't mind my stealing your general format for these things.[email protected]&prev=/groups?num=25&hl=en&lr=&group=perl.perl6.internals&start=0

The usual footer

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