Front page | perl.perl6.language |
Postings from February 2004
This week's summary
From: The Perl 6 Summarizer
February 10, 2004 05:09
This week's summary
Message ID: firstname.lastname@example.org
The Perl 6 Summary for the week ending 20040208
Another Monday evening. Another day of displacement activity out of the
way. There's a huge lump of belly pork braising slowly in a mixture of
stock, rice wine & soy sauce, and nothing on the telly. It must be time
to write the Perl 6 summary. As usual, I'm going to deal with
The cleanup of the RT bugs database continued apace. Stephane Peiry
posted a list of old RT entries and their authors and asked them to
supply updates ore they'd be flagged as obsolete in the queue. In the
ensuing discussion, Steve Fink pointed out something that I'd missed: as
of this week, all the perl6 tests (including the regular expression
tests) are passing. He pointed out that the suite is *far* from
comprehensive, but I still think this is pretty spiffy.
DOD, mutation, and generational collectors
Dan had posted some thoughts on the way that many of the things that
cause problems for threads also cause problems for generational garbage
collectors and gave a list of 'mutating activities' that might need to
be trapped by both threads and GC. Gorgon Henriksen asked Dan for more
elaboration on what he meant by generational GC because, as Gordon
understood it, it came with a whole load of baggage that was
inappropriate for Parrot. This week, Dan gave his answer and pointed out
that various other improved GC schemes (incremental, concurrent)
required the same level of support as a generational scheme so it made
sense to provide such support now. Leo Tötsch had a few comments to make
about the different possible schemes and discussion moved on to the
nastiness of doing GC in a multithreaded environment.
http://tinyurl.com/24vjs -- Thread root
The SDL bindings that chromatic's been working on continue to develop.
(Bah! People who insist on weird capitalization of their names and thus
force me into the passive voice are jolly annoying, even if personally
Michal Wallace wondered what Dan's plan was for getting python objects
working for the pie-thon. Michal has made a small start on wrapping
PythonObjects as PMCs which seemed to work and was apparently easier
than trying to recode them as PMCs. He pointed everyone at his current
implementation. So far his post has been Warnocked.
http://tinyurl.com/3fnud -- The wrapper implementation
Docs and releases
Tim Bunce wondered whether Parrot's documentation was in sync with
current implementation reality, and when we'd see a clean way to make
method calls. In a post dated the 3rd of February, Leo confessed that
there is still a lot of outdated or unimplemented stuff in the assembly
related docs and noted that Dan had said that the low-level object
design would be done by the 30th of January.
Backward branch, Warnocked
Pete Lomax drew everyone's attention to a problem he'd found back at the
beginning of December which Leo had said was a problem with a backward
branch. He wondered when/if the problem might be fixed.
Sadly the answer was "We're not sure when it'll be fixed, it's really
hard to fix the current version of IMCC, but it should be easier to sort
out in IMCCv2. For now, don't do that." Meanwhile, Harry Jackson tried
to track the bug down to the appropriate bit of IMCC; his experiments
with code variants seem to imply that the problem is with IMCC not
recognizing that "ret" is a branch.
Alignment issues with *ManagedStruct
The redoubtable chromatic came across some issues with the alignment of
members within a struct and wondered if there might be a better way of
sorting out alignment issues than his current trick of explicitly
padding things out (which he feels probably isn't portable). Leo pointed
out that there was already support for offsetting struct members when
setting up a *Struct PMC by using the third initializer parameter.
As discussion of the best way forward continued, it emerged that Jens
Rieks is in the process of writing a simple C-parser in IMC which should
be able to parse header files and create ManagedStructs automagically.
Go Jens. Tim Bunce suggested that Jens take a look at
ExtUtils::XSBuilder for hints. Meanwhile Uri was looking at
Convert::Binary::C which is apparently far more robust.
Leo ended up listing a set of requirements for a script to parse C
headers and generate the appropriate PIR code to set up various *Struct
http://tinyurl.com/36kxn -- Jens talks about his C parser
http://tinyurl.com/234du -- Leo's requirements
Baby, baby, where did my patch go?
Gordon Henriksen wondered what had happened to a patch that he'd
submitted to bugs-parrot. Robert Spier wasn't sure, but noted that the
MyDoom virus was busy causing the perl.org servers a hard time (more
than a gigabyte in 19 hours; Robert sounded a little fraught). As it
happened, the patch had actually bounced from the list because it was
huge. Everything got sorted out in the end though.
Michael Scott continued his sterling work on Parrot's documentation by
adding the Perl tools he used to generated the HTML docs to the tree at
tools/docs/write_docs.pl, he also announced that he'd finished the
examples and the various *.c file directories and will be looking at
classes next. I wonder how long it'll be before someone reimplements
them in in PIR...
Approaching PDD16 callbacks
Leo announced that he's implemented a first hacky way to run PASM
callbacks from C NCI functions; it's not a full implementation, but it's
a start. As usual, he solicited comments. And so far he's not had any.
Meanwhile, in perl6-language
The Unicode argument again
Andy Wardley strongly advocated not making Unicode operators "«", "»"
etc part of the core language. Larry disagreed, but proposed that any
Unicode declarations should also have an "is ASCII('!@#$')" trait to
specify the ASCII equivalent.
Compiler writing tools
Luke Palmer has been writing 'a lot of compiler' recently and posted
some of his positive and negative experiences with YACC as possible
pointers to the sort of things Perl 6's grammars might need. In his
response, Larry once again demonstrated the truth of the proposition
that "Everyone writes a templating module at least once in their life"
when he confessed that "the first production language I ever wrote was
an inside-out language where control commands were embedded in text that
was to be output by default."
Acknowledgements, Apologies, Announcements
Oops, reading back over last week's summary I realise that, when I meant
to talk of going to see Eliza Carthy performing live, I actually wrote
that we'd gone to see her perform life. Sorry about that.
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 me feedback at
email@example.com, or drop by my website.
http://donate.perl-foundation.org/ -- The Perl Foundation
http://dev.perl.org/perl6/ -- Perl 6 Development site
http://www.bofh.org.uk/ -- My website, "Just a Summary"
This week's summary
by The Perl 6 Summarizer