The Perl Summary for the week ending 20021222
    Hello, good morning and welcome to the Christmas edition of the Perl 6
    summary. For some reason I have convinced myself to sit here on
    Christmas Eve writing a summary for all you crazy kids out there who
    hang on my every word. Plus, it beats wrapping all the presents and last
    minute panic shopping.

    So, let's get perl6-internals out of the way first.

  The Road to 0.0.9
    The first half of the week saw a feature freeze in the run up to the
    release of Parrot 0.0.9, so people spent their time trying to track down
    and fix various tinderbox issues and other bugs.

    Steve Fink worked on trying to get the NCI (Native Call Interface) tests
    to work properly.

    Simon Glover and Leo Tötsch worked on tracking down a GC bug that was
    causing problems for the scratchpad tests.

    Andy Dougherty is having problems getting languages/perl6 to pass its
    tests. Apparently part of the problem is that the undef function isn't
    fully defined.

    Andy also found problems with sprintf and 64 bit INTVALs (fixed by Brent
    Dax), PMCs and 64 bit INTVALs (fixed by Leo Tötsch), PerlHashes and
    gcc-2.95.3 and 2.8.1 on Solaris (confirmed as a problem with other
    versions of gcc on Solaris by Joshua Hoblitt), dependency issues between
    Jako and IMCC from a clean directory and problems with the Jako life
    implementation.

    Bruce Gray sent a pile of fixes for Win32 systems, covering GC and build
    problems.

  Compiling to ParrotVM
    Klaas-Jan Stol is thinking of writing a compiler that targets Parrot for
    his Bachelor's in Computer Science, probably a TCL compiler, and he
    asked for suggestions and tips.

    David Robins made a few suggestions and pointed out that parrot is a
    moving target. Dan protested that it wasn't moving that much ("If I
    'adn't nailed it to the perch, it'd've muscled up to them bars and...
    VOOM!") and said that he thought a TCL to Parrot compiler would be
    great. Will Coleda put up a URL for his first pass at such a beast and
    asked that we be gentle with him (he put up a URL for his second pass
    later, which is the link below). Gopal V pointed out that IMCC may be a
    better target than Parrot assembly as that took care of register
    allocation and generally helped programmers retain their hair and also
    suggested that, if the compiler was written in C then DotGNU's TreeCC
    would be worth looking at. Tanton Gibbs, who is working on a C++
    compiler agreed that TreeCC is 'an extremely nice system' that he
    recommended highly.

    http://makeashorterlink.com/?T27042FD2

    http://www.coleda.com/users/coke/parrot/

    http://makeashorterlink.com/?H2CF62ED2

  Register scanning
    Apologizing for reopening the register scanning can of worms, Steve Fink
    wondered about the requirement that all Parrot GC implementations scan
    all hardware registers for live pointers. Apparently this is a real
    problem with, for example, the IA64 architecture. He proposed that
    configure probe for systems that would support register scanning GC, but
    that the default implementation should use a 'registration' system. He
    followed this up with a 'naive' implementation of such a system. Jason
    Gloudon suggested another scheme that I'm afraid I didn't understand to
    implement 'accurate' GC.

    http://makeashorterlink.com/?L2DF41ED2

    http://makeashorterlink.com/?T1EF22ED2

  Returning a new PMC from ops
    David Robins wondered about the cleanest way to return a new PMC from an
    op. He and Leo Tötsch thrashed it out.

    http://makeashorterlink.com/?K1FF62ED2

  Parrot v0.0.9 "Nazgul" released
    Steve Fink announced the release of Parrot version 0.0.9, aka "Nazgul"
    complete with a long list of new features, and the usual call for
    further assistance. Well done everyone. As Steve says, Parrot is getting
    dangerously close to being really usable...

    http://makeashorterlink.com/?X10022FD2

    http://makeashorterlink.com/?C51024FD2

Meanwhile, in perl6-language
    It was quiet... too quiet. Only 48 messages in perl6-language, maybe
    we're all keeping quiet so as not to distract Larry from writing the
    next Apocalypse.

  Comparing Object Identity
    This thread (along with every other thread in the language list this
    week) continued from last week. Dan pointed out that using long lived
    object IDs (ie. unique for all time) would be expensive, and reckoned
    that the basic approach should be fast and good enough for the common
    case. Piers Cawley wondered if doing object 'identity' comparison with a
    method (eg: "$obj.is($other_obj);") wasn't actually the best way
    forward. (Piers had been applying his OO rule of thumb -- if you're not
    sure of how to do something, take a look at a Smalltalk image). Dave
    Whipp proposed an adverb syntax ("$a eq : ID $b") which would be
    generalizable:

       $a eq:i $b  # compare, case insensitive
       $a eq:w $b  # compare, ignoring whitespace differences
       $a eq:ID $b # are they the same object?

    Which Austin Hastings (at least) liked.

    http://makeashorterlink.com/?B22032FD2

  Everything is an object
    Piers Cawley and Dave Storrs went back and forth a few times about left
    to right and right to left 'pipelines' in Perl 6. Piers was arguing that
    Perl5ish right to left pipelines ("@out = grep rx/.../, map {...} @in"
    should work without any extra syntax in Perl 6 and would be happy if
    that meant the only support for left to right pipelines was "@out =
    @in.map({...}).grep(rx/.../)". Dave agreed with Piers about right to
    left pipelines, but wants a less ugly left to right syntax. Both of them
    would like to see an 'official' Collection hierarchy, which led Simon
    Cozens to suggest that we're getting close to inventing Ruby. Andy
    Wardley didn't think this was a bad thing, and Dan pointed out that
    actually we're getting closer to inventing Smalltalk, which was fine, so
    long as we don't end up inventing Lisp.

    Dan Sugalski isn't sure about the value of a special syntax for left to
    right pipelining and, after a certain amount of back and forth provided
    a really good summary of why.

    After that I get the impression that we're getting a little bogged down.
    Everyone's stated and restated their position and I'm not entirely sure
    that we're moving forward. It's probably time to appeal to Larry, but
    he's busy writing an Apocalypse and doing the Christmas thing.

    http://makeashorterlink.com/?N53025FD2

    http://makeashorterlink.com/?C34026FD2

  Is it required to use type declarations
    The week before, Dave Storrs mentioned that he was worried that Perl 6
    was moving further and further away from Perl 5's (almost) typelessness
    and wondered if type declarations would be required in Perl 6. Piers
    Cawley pointed out that there's a difference between typed variables and
    typed values, argued that typed values were the most useful. He then
    gave a rundown of where he saw utility in declaring variable types with
    the 'safety' issue way down at the bottom (of the three entry list, it'd
    be lower down if I could think of any other reasons though).

    http://makeashorterlink.com/?W25041FD2

In Brief
    A discussion of Leon Brocard's Curses Life turned into a discussion of
    the merits of 'caller saves' calling conventions. Leo Tötsch thinks it's
    suboptimal, Piers Cawley doesn't, pointing out that there will always be
    cases where one style loses, but that caller saves makes tail call
    optimization and continuations a good deal easier to implement.

    Jerome Quelin upgraded his befunge interpreter giving it a big version
    number bump to 0.1.0 from 0.07 because he's now using an array of
    PerlArrays instead of an array of strings.

    Leo Tötsch continued down the road towards unifying buffers and PMCs.
    (Which covers a lot of ground in one sentence...).

    Jason Gloudon fixed a bug with PARROT_GC_DEBUG

Who's Who in Perl 6
    I've been getting a few 'strange' entries in the questionnaire inbox
    recently from names I don't recognize so I've decided to summarize the
    answers:

    Who are you?
        I know this will come to you as a surprise and I do not wish to
        impose upon you, but I am Doctor Fred Mbogo, the only son of the
        former minister of the Nigerian treasury, Kevin Mbogo.

    What do you do for/with Perl 6
        Gather MILLIONS of ADDRESSES for you to deliver your email AD to so
        many People at such a low cost!!!

    Where are you coming from?
        Nigeria

    When do you think Perl 6 will be released?
        WHILE stocks LAST!

    Why are you doing this?
        Because l wish to solicit for you assistance in a transaction which
        l strongly believe will be of mutual benefit to both of us.

    You have 5 words. Describe yourself
        Red Hot Lolitas for you!

    Do you have anything to declare?
        This message isn't spam. Honestly. Really. If you don't believe me
        send mail to addresstrap at scum-sucking-spammer dot com and I'll
        send you lots more mail that isn't spam.

Acknowledgements
    Well, Christmas is coming, the goose is getting fat so, for once this
    didn't get written on a train. It got written sat in a comfortable chair
    with the ginger ninjas (our two new kittens, Sully & Mike) tearing up
    the place.

    I'd like to say a big "Go disembowel yourselves over a red hot brazier
    you worthless pustules on the backside of humanity" to the folks who
    spam the questionnaire mailbox with pointers to photos of naked 12 year
    olds, stock tips and offers of a share of millions of dollars of fairy
    gold. Seriously folks, Christmas is a season of Peace and good will to
    all men so, do the world a favour and remove yourselves from it.

    Ahem. Merry Christmas to everyone else, have a great holiday.

    Proofreading was done by the ever lovely Aspell and the ever ugly Piers
    Cawley. Between them, they probably screwed it up again.

    If you're not a pustule on the backside of humanity, please consider
    answering the questionnaire and sending it to <mailto:[EMAIL PROTECTED]>.

    If you didn't like this summary, what are you doing still reading it? If
    you did like it, please consider one or more of the following options:

    *   Send money to the Perl Foundation at
        http://donate.perl-foundation.org/ and help support the ongoing
        development of Perl 6.

    *   Get involved in the Perl 6 process. The mailing lists are open to
        all (except the aforementioned pustules).
        http://dev.perl.org/perl6/ and http://www.parrotcode.org/ are
        good starting points with links to the appropriate mailing lists.

    *   Send feedback, flames, money and/or a household robot to do the
        chores (we're in the future now, everyone should have robots) to
        <mailto:[EMAIL PROTECTED]>

    The fee paid for publication of these summaries on perl.com is paid
    directly to the Perl Foundation.

Reply via email to