This Fortnight in Perl 6, March 7 - March 21, 2005
by Matt Fowles
|
Pages: 1, 2, 3
Parrot
I will start this part with a very large announcement. Dan has decided to step down as Parrot's Chief Architect. Chip Salzenberg (who just earned first name-only status) has taken up the burning parrot...err...torch. To forestall questions/outrage/grumbling, Dan explained that Leo did not get the position because he did not want it. I know that I personally have learned a lot from Dan and Squawks of the Parrot (including how to turn crystal sugar into baker's sugar), and want to think him a great deal for the work he put into Parrot. This means the responsibility of returning the pie to Guido now falls on Chip's shoulders.
make
install Parrot Headers
Lambeck noticed that make install does not install Parrot's
header files. It probably should; he filed a bug.
atan2
needs -xlibmieee on Sun
Andy Dougherty provided a patch adding appropriate hints to the Solaris build. Leo applied it.
Burning Parrot
Leo put out a request to revive the Parrot tinderboxen. Steve Peters suggested integrating it with the current Perl smoke reporting process. Peter Sinnot put up a server on a spare machine in the meantime.
ncurses_life
Uwe Voelker reported a bug in ncurses_life. Leo fixed it and put
out a plea for someone to update it. Matt Diephouse updated it.
Refactor
of t/pmc/pmc.t Needed
Leo suggested that an interested party would be able to factor the
Perl* tests out of pmc.t and into perl.t. Steven
Schubiger offered to try.
String Tasks
Leo posted a set of tasks looking for takers with respect to string stuff. Steven Schubiger and Aldo Calpini each stepped up to some.
thr-primes.imc
Bernhard Schmalhofer updated thr-primes.imc to not use
Perl* PMCs, which uncovered a bug in Undef.pmc. Leo fixed
it.
Aggregate Clone vtable
Leo noticed that some aggregates do deep copies while others do shallow. All should do shallow. Takers welcome.
**Arrays TODO
Fixed*Arrays should have a limited form of splice
available to them. Also, the Resizable*Arrays should have their
allocation schemes adapted to that of the ResizeablePMCArray, and
*BooleanArray should store just bits. Bernhard Schmalhofer
offered to take on the *BooleanArrays.
Anonymous Subclasses
Simon Glober discovered that anonymous subclasses were not working in December. Leo fixed it.
Perl 6 Compiler in Perl 6
Millsa Erlas hoped that writing a Perl 6 compiler in Perl 6 was still a priority. Markus Laire pointed her to Pugs. She seemed happy.
Object Internals
Leo has been steadily hacking away at the object internals. There is now
a get_mro opcode.
Dynclasses Failure in gcc 3.3.3
Leo committed a workaround to a GC problem with dynamic library loading. Eventually someone needs to implement the real solution.
The Many Faces of Win32
It turns out that there are several different flavors of Windows builds with MinGW (not to mention Cygwin or MSVC). This causes pain.
TODO: Clean Parrot's A*I
Jarkko Hietaniemi posted a TODO for cleaning up both Parrot's API and ABI. Leo agreed that it would be very nice.
Calling PIR from a PMC
William Coleda wanted to know how to call PIR code from a PMC. Jeff Horwitz
pointed him to the Parrot_call_sub_* API.
PAST Compiler Problems
Bernhard Schmalhofer has a program that he can make work in imc, but not
from PAST. It turns out that we don't yet have a way to pass options to the
compile opcode. We need that.
Makefile
Cleanup
Bernhard Schmalhofer offered to clean some old imcc targets out of the
Makefile. Leo told him to go for it.
MRO Broke Tcl
Will Coleda was sad that Leo kept breaking Tcl. Leo suggested that he add
the Tcl tests to the base make test. Also, there is some funniness
going on because tests fail for Leo and not Will.
TODO:
Add Multiple Return Values to Parrot_call_sub
Matt Diephouse posted a TODO for adding the ability to access multiple return values from C.
MANIFEST Failures
Bob Rogers was seeing MANIFEST failures. It turns out that he forgot to use
the -dP switch with CVS. We have all done it.
PASM -> IMC
Bernhard Schmalhofer committed a few TODO tests for generating and running PASM from Pir. Jens Rieks pointed out that this does not work and is only a debugging aid. I don't see anything wrong with wanting it to work, though.
Segfault
on splice
Nick Glencross found a segfault when splicing an IntList. Jens
Rieks provided a patch that allowed Parrot to die earlier and more cleanly. Leo
fixed the problem.
Documenting the MinGW build
François Perrad provided a patch updating documentation for building with MinGW. Warnock applies.
Segfaulting md5sums
Nick Glencross decided to check up on his md5sum library. It still compiles, but it segfaults. Leo found and fixed the GC bug.
Parrot_Exec_OS_Command
François Perrad noticed that MinGW was very particular about how you
execs OS commands. He wondered if this should be fixed at the configure layer
or the Parrot_Exec_OS_Command layer. Dan explained that he never
intended the latter to be language independent, and that a language independent
version should go in a library.
Namespaces in PIR
Leo posted a call for comments on PIR namespaces. Dan suggested a small addition.
Builtins
Leo committed a change moving builtins to a class namespace and provided convenient access to them from PIR.
MMD: Multi Sub Syntax
Leo put out a call to develop a syntax for multi subs in PIR. Many people suggested options.
Returning a Variable Number of Arguments
Bob Rogers updated PIR code to allow returning a variable number of arguments. Leo applied it.
The Usual Footer
Posting via the Google Groups interface does not work. To post to any of
these mailing lists please subscribe by sending email to
perl6-internals-subscribe@perl.org,
perl6-language-subscribe@perl.org, or
perl6-compiler-subscribe@perl.org. 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
ubermatt@gmail.com.

