Piers Cawley | 2 Jun 20:08 2003

This week's Perl 6 Summary

The Perl 6 Summary for the week ending 20030601
    Another Monday, another Perl 6 Summary. Does this man never take a
    holiday? (Yes, but only to go to Perl conferences this year, how did
    that happen?)

    We start with the internals list as usual.

  More on timely destruction
    The discussion of how to get timely destruction with Parrot's Garbage
    Collection system continued. Last week Dan announced that, for languages
    that make commitments to call destructors as soon as a thing goes out of
    scope, there would be a set of helpful ops to allow languages to trigger
    conditional DOD (Dead Object Detection) runs at appropriate times.
    People weren't desperately keen on the performance hit that this entails
    (though the performance hit involved with reference counting is pretty
    substantial...) but we didn't manage to come up with a better solution
    to the issue.


  Bryan C. Warnock, patchmonster of the week
    Bryan C. Warnock seems to be attempting to outdo Leo Tötsch in the
    patchmonster stakes this week. He put in a miscellany of patches dealing
    with the Perl based assembler, opcode sizes, debugging flags and
    probably others. Most of them were applied with alacrity.

  The Perl 6 Essentials book
    Dan Sugalski gave a rundown of how the Perl 6 Essentials book came
    about, what's in it and all that jazz. He started by apologizing for not
    mentioning it before, but he thought he had. This led Clint Pierce to
(Continue reading)

Piers Cawley | 9 Jun 14:26 2003

This week's summary

The Perl 6 Summary for the week ending 20030608
    It's another Monday, it's another summary and I need to get this
    finished so I can starting getting the house in order before we head off
    to Boca Raton and points north and west on the long road to Portland,
    Oregon. Via Vermont. (I'm English and as the poem comments, the rolling
    English road is "A rare road, a rocky road and one that we did tread //
    The day we went to Birmingham by way of Beachy Head." Just because I'm
    in America doesn't mean I can't take an English route to OSCON)

    We'll start with the internals list this week (and, given that there are
    only 18 or so messages in my perl6-language inbox, we may well stop

  Building IMCC as parrot
    It's been pretty much decided that IMCC will soon become 'the' parrot
    executable. Josh Wilmes, Robert Spier and Leo "Perl Foundation grant
    recipient" Tötsch are looking into what needs to be done to make this
    so. It's looking like the build system may well see some vigorous
    cleanup action in this process.


  The Horror! The Horror!
    Clint Pierce continued to expand on the internals of this Basic
    implementation. The more I see of his pathological examples, the gladder
    I am that I escaped BASIC as quickly as possible. Still, kudos to Clint
    once more for the effort, even if it is a tad embarrassing that the most
    advanced language hosted on Parrot is BASIC. (On IRC Leon Brocard and
    others have been heard to remark that they're? unlikely to go all out at
    a real language until Parrot has objects. Dan?)
(Continue reading)

Piers Cawley | 16 Jun 19:58 2003

This week's Perl 6 Summary

The Perl 6 Summary for the week ending 20030615
    Welcome to the last Perl 6 Summary of my first year of summarizing. If I
    were a better writer (or if I weren't listening with half an ear to
    Damian telling YAPC about Perl 6 in case anything's changed) then this
    summary might well be a summary of the last year in Perl 6. But I'm not,
    so it won't. Instead, I'm going to try and keep it short (summaries
    generally take me about 8 hours on an average day, and I really don't
    want to lose 8 hours of YAPC thank you very much).

    It's getting predictable I know, but we'll start with the internals list

  Class instantiation and creation
    Dan continued slouching towards full OO and outlined the issues involved
    with setting up classes and asked for people's opinions. People offered


  Writing Language Debuggers
    Clinton Pierce wanted to know how to go about writing language level
    debuggers in Parrot. (This man is unstoppable I tell you.) He offered
    some example code to show what he was trying to do. Benjamin Goldberg
    had a style suggestion for the code, but nobody had much to say about
    Clint's particular issue.


  Converting Parrot to continuation passing style
    A lot of this week's effort was involved in getting support for the
(Continue reading)

Piers Cawley | 24 Jun 00:53 2003

This week's summary

The Perl 6 Summary for the week ending 20030622
    Welcome to my first anniversary issue of the Perl 6 Summary. Hopefully
    there won't too many more anniversaries to celebrate before we have a
    real, running Perl 6, but there's bound to be ongoing development after
    that. My job is secure!

    Because I can't think of anything better to do, I'll start with the
    action on the perl6-internals list

  Converting parrot to continuation passing style
    The ongoing effort to convert Parrot to use/support continuation passing
    style (CPS) at the assembler level continues. Jonathan Sillito offered
    another patch implementing the require support, which Dan liked and

    Klaas-Jan Stol wondered what he'd missed; last time he looked Parrot
    wasn't doing continuation passing. He asked why Dan had chosen to go
    down that route. Dan answered that he had realized that "we had to save
    off so much state that we essentially had a continuation anyway".
    Explicitly going with continuation passing just made things more formal,
    and wrapped up all the context saving behind a straightforward
    interface. He promised a more detailed explanation later.


  Portable way of finding libc, unbuffered reads
    Clinton Pierce noted that the following code:

        loadlib P1, "/lib/libc.so.6"
        dlfunc P0, P1, "system", "it"
(Continue reading)

Piers Cawley | 30 Jun 23:48 2003

This week's summary

The Perl 6 Summary for the week ending 20030629
    Welcome to the third of my US tour Perl 6 summaries. Once again I'm
    pleased to report that the denizens of the Perl 6 mailing lists continue
    to make the life of a touring summarizer an easy one by not posting all
    that much to the lists. So, I can sit here in my room at the Shaker Inn
    in Enfield and marvel at the traffic noise outside, wonder about the car
    next door with the New Hampshire plates reading PERLFAN, and just
    generally appreciate the loveliness of the room.

    But, while I'm doing that, I should start with perl6-internals

    At the end of last week, Dan outlined his thoughts on how exception
    handling will work in Parrot. This week, people talked about it.
    Discussion revolved around how much information should be attached to an
    exception and how/whether we should support resumable exceptions.


  More on Continuation Passing
    Last week I said that "I get the strong feeling that Leo Tötsch isn't
    entirely happy with the new Continuation Passing Style". This week Leo
    corrected me; I hadn't noticed that the speed issues had been addressed
    by the latest changes to parrot (in fact the current CPS implementation
    is faster than the old "invoke/ret" scheme.

    Sean O'Rourke addressed Leo's problem with the Perl 6 Compiler tests
    failing by saying that the compiler should really be ported to use CPS
    rather than implementing a new variant of the Sub PMC that uses the old
    scheme. Leo reckoned that such a port wasn't currently doable because
(Continue reading)