p6summarizer | 4 Feb 18:21 2003

This weeks' summary

The Perl 6 Summary for the week ending 20030202
    Welcome to the second Perl 6 summary of the Copious Free Time era and
    already I've broken the 'mailed out by Monday evening' promise. There
    were reasons however, mostly to do with going down to London to do the
    paperwork for my redundancy stuff. So, I'm emending the promise to
    'mailed out by logical Monday evening'.

    Starting with perl6-internals (which was pretty quiet this week, only 76
    messages compared to perl6-language which tipped the scales with 162)

  Parrot Objects (noun, not verb)
    Piers Cawley worried about class private attributes and asked it it was
    still going to be possible to write an object serializing tool that
    wouldn't require tons of Perl class overloads. Dan said that it should
    still be possible.


  The packfile patches, an ongoing saga.
    Leo Tötsch spent the week working on the packfile format and Parrot's
    tools for manipulating it. Various internals folks provided feedback,
    pointers to standards and other handy feedback.




(Continue reading)

p6summarizer | 11 Feb 15:44 2003

This week's Perl 6 Summary

  The Perl 6 Summary for the week ending 20030209
    Welcome to the latest Perl 6 summary, your handy cut out and keep guide
    to the goings on in the crazy world of Perl 6 design and development.

    It's been a rather quiet week this week; only 75 messages in
    perl6-internals and a mere 57 in perl6-language. So, at least it's

    We start off, as is traditional, with perl6-internals

  The 2004 Performance challenge
    Dan announced that he'd made a bet with Guido van Rossum that Parrot
    would be faster at executing a pure python benchmark of some sort to be
    determined. The details of the challenge will be announced at OSCON 2003
    and the results at OSCON 2004. Dan stands to lose $10 and a round of
    beer for the Zope/Pythonlabs folks. (Dunno how many of them there are
    though...). We don't know what he stands to win yet, but I'd hope 'beers
    from each of the Zope/Pythonlabs folks' are included.

    For some reason nobody commented on this.


  More Parrot Objects
    Jerome Quelin wondered how Parrot objects would handle property
    inheritance. Dan pointed out that properties don't get inherited and
    Jerome realised he meant to ask about attribute inheritance. Attributes
    *are* inherited but are mostly invisible to any methods but the methods
    of the class that defines the attributes (though they will be accessible
    (presumably through reflection)).
(Continue reading)

Piers Cawley | 17 Feb 19:39 2003

This week's Perl 6 Summary

The Perl 6 summary for the week ending 20030216
    Welcome to the all new, entirely unaltered, all singing, all dancing
    Perl 6 summary. Your beacon of reliability in the crazy world that is
    Perl 6 design and development.

    Another quiet week. Even quieter than last week in fact, unless my mail
    spent some of the time up the spout, but I don't think so.

    So, as is traditional, we kick off with perl6-internals

  CGP - The Computed Goto Prederefed Runloop
    Last week I mentioned that nobody seemed to have commented on Dan's bet
    with Guido van Rossum that Parrot would outperform Python by OSCON 2004.
    (I also missed the fact that the penalty for losing the bet now involves
    cream pies as well as $10 and a round of drinks...). After I posted the
    summary to the mailing lists, Leopold Tötsch informed me that he had
    commented indirectly by announcing his new, improved, ludicrously quick
    runloop that combines computed GOTOs and predereferencing. Whatever that

    This week, Leo and Nicholas Clark worked out how to combine the
    blistering pace of the JIT core (for operations that had been translated
    into hand hacked machine code) with the blistering pace of the CGP
    runloop (for the other ops). As far as I can tell, this involved turning
    the idea 'inside out', the VM actually starts up running JIT compiled
    code and calls out to the CGP core to execute non-JITable sequences of
    ops. The numbers for this approach look fantastic (quite stunningly
    quick...) So Leo checked it in.

(Continue reading)

Piers Cawley | 25 Feb 10:46 2003

This week's Perl 6 Summary

The Perl 6 summary for the week ending 20030223
    Another week, another Perl 6 Summary, in which you'll find gratuitous
    mentions of Leon Brocard, awed descriptions of what Leopold Tötsch got
    up to and maybe even a summary of what's been happening in Perl 6 design
    and development.

    Kicking off with perl6-internals as usual.

  Strings and header reuse
    Dan responded to prompting from Leo Tötsch about the use and reuse of
    string headers. The problem is that most of the string functions that
    produce modified strings do it in new string headers; there's no way of
    reusing existing string headers. This can end up generating loads of
    garbage. Dan's going through the various string handling ops and PMC
    interfaces working out what needs to do what, and documenting them, as
    well as adding in versions of the ops that take their destination string
    headers as an argument. Dan hopes that 'we can make the changes quickly
    and get this out of the way once and for all', leading Robert Spier to
    mutter something about 'famous last words'.


  PXS help
    Tupshin Harper has been trying to use an XML parser from within Parrot
    and started off by looking at the PXS example (in examples/pxs) but had
    problems following the instructions given there as his compiler spat out
    errors by the bucket load. Leo Tötsch thought that PXS was probably
    deprecated and the native call interface (NCI) was the thing to use.
    Being Leo, he provided a port of the PXS Qt example to NCI. Although PXS
    appears to be out of sync with the parrot core, nobody was entirely sure
(Continue reading)

Piers Cawley | 3 Mar 17:26 2003

This week's summary

The Perl 6 Summary for the week ending 20030302
    Welcome back to another episode in the ongoing saga that is the Perl 6
    development process (or at least my attempt to describe it).

    We kick off with perl6-internals.

  IMCC calling conventions
    Piers Cawley attempted to describe tail call optimizations, why they
    were a good thing and why a caller saves calling convention made such
    optimizations easier (possible?). He wondered if he hadn't just
    succeeded in muddying the waters still further. Jerome Vouillon appeared
    to understand what Piers was going on about and pointed out that a
    caller saves scheme also helps with exception handling. Benjamin
    Goldberg wondered about Perl 5's "goto &func" semantics which can be
    looked at as a 'sort of' tail call (except you don't actually get much
    of an optimization with Perl 5 as it stands) and proposed a callee saves
    scheme for doing tail call optimization which didn't optimize away an
    unnecessary pair of save/restores. Dan pointed out that, while "goto
    &func" (which is sort of like tail call optimization in Perl 5) would
    have to be supported, tail call optimization made more sense if you
    didn't have to use any special syntax to make use of it.


  A couple of easy questions...
    David (Cuny?) wondered how he could determine the data type of an
    arbitrary PMC and whether there were any pre-built Windows binaries of
    Parrot available. Leon Brocard pointed him at the "typeof" operator in
    answer to the first question but punted on the second. Leo Tötsch also
    pointed at "typeof". David noted that it didn't seem to be available in
(Continue reading)