The Perl 6 Summary for the week ending 2004-07-25
    Monday morning, all's well, and Piers sits down at his desk to bash out
    another in his ongoing series of Perl 6 Summaries.

    I've just realised that I missed noting the second anniversary of my
    writing these summaries. It came up a month ago. On my last anniversary
    I hoped I wouldn't be celebrating many more of them before we have a
    real, running Perl 6; I'm still hoping. It looks like we may well have a
    real, running Python interpreter on Parrot before Perl 6.

    But we won't have it this week. Read on.

  Pie-thon!
    First, the bad news. Dan's conceded.

    Now, the good news. Dan and Leo still got an awful lot done in a
    surprisingly short time; who knows where we'd be if Dan hadn't been
    stuck without a working laptop for most of June. In 5 weeks, we went
    from nothing at all running to having four out of seven running, and 3
    of those running faster than Python. Leo estimated that, once everything
    was done, Parrot should be averaging about twice the speed of Python.
    Next week (or possibly the week after) should see some post mortem
    documentation from Dan and Leo discussing what they've learnt from the
    exercise, and what needs to be done to get a 'proper' python
    implementation up on Parrot.

    So yes, Dan's going to get a pie in the face and be out a round of
    drinks. If you're at OSCON, you might like to drop in on the Python
    lightning talks and watch.

    http://xrl.us/ciwi

  Cygwin JIT problems
    Joshua Gatcomb pointed out that JITted programs were dumping core on
    Cygwin. Again. He and Leo tracked down a problem with the flags used on
    the cygwin version of GCC. Joshua made a plea for experienced Cygwin
    programmers to help out with issues of getting various things working on
    the Cygwin parrot. He also called himself a 'bumbling idiot' but none of
    us (apart, possibly, from his wife) believed him.



  The whole and everything
    Leo and Dan had a long discussion about a proposal of Leo's that Dan had
    rejected without commenting on. Leo's not exactly happy about Parrot's
    subroutine call speed and had proposed something which he thought would
    make things go faster. Dan disagreed, and pointed out that it was
    actively thread dangerous (there's a difference between not optimizing
    for threads and not making threading possible).

    In a lighter hearted part of the thread, Larry suggested embedding
    python in Parrot as a way to get all the pie-thon tests running at least
    as quickly as python. Leo hacked something up which piped the Python
    code to python itself. But we're too honest to do that at OSCON.

    http://xrl.us/ciwj

  Parakeet 0.1
    Michel Pelletier announced the release of Parakeet 0.1, a small Parrot
    language which he hopes will eventually expose all of the OO features of
    the Parrot VM. Judging by the description he posted, it's a fascinating
    Forth like language. Kudos to Michel.

    http://xrl.us/ciwk

    http://xrl.us/ciwm

Meanwhile, in perl6-language
  The infinite thread
    Pushing onto lazy lists continued to exercise the p6l crowd (or at
    least, a subset of it). Larry said that if someone wanted to hack
    surreal numbers into Perl 6.1 then that would be cool.

  Do users need FileHandles?
    Remember Dave Whipp's proposal to get rid of user visible filehandles in
    favour of something like tied scalars? It sparked a good deal of
    discussion this week. A few people were pro, a few anti, with Larry
    seeming to position himself somewhere in the middle.

    http://xrl.us/ciwn

  The mathematics summary
    Austin Hastings made me laugh when, following my announcement that I'm
    off to train to be a maths teacher, he wrote a spoof 'Mathematics
    summary'. Thanks Austin.

    http://xrl.us/ciwo

  String Interpolation
    The string interpolation subthread of last week broke out into it's own
    first class thread this week. Larry said that he was seriously
    considering incrementing the Ruby-o-meter some more by saying that the
    *only* interpolators in double quotes would be

        \n, \t etc.
        $foo
        @foo[$i]
        %foo{$k}
        { EXPR } 

    where the last provides a list context to "EXPR". Damian thought that
    the current solution with "$(...)" and "@(...)" was still the best way
    to go. He didn't relish having to escape every "{" double quoted strings
    (code that writes code for execution by "eval" is hard enough to read
    without a whole bunch of *extra* quoted characters being required).

    As is usual with p6l, the discussion was wide ranging and touched on a
    whole bunch of other entertaining subjects. He who must not be
    capitalized, chromatic brought up curried and first class roles, and
    Larry shied away from allowing the (IMHO) eminently sensible

        $foo does $bar

    Where do we stand now? Well, I can safely say that some stuff will
    interpolate in double quoted strings.

    http://xrl.us/ciwp

  xx and re-running
    James Mastros made my head hurt slightly as I first read his post about
    the "x" operator. For a large chunk of his post I was reading "x" as an
    algebraic *x* which stood for an arbitrary operator before it dawned on
    me that he was talking about the repetition operator (which becomes "xx"
    in Perl 6), using the particular example:

        @list = int(rand 100) xx 100

    His contention was that people expected the "rand" part to be evaluated
    100 times and that they were surprised when it wasn't (frankly, I'd be
    surprised if it were, but I might be too indoctrinated). He proposed
    that either a new "xxx" be introduced which reevaluated its LHS multiple
    times, or that "xx" be altered so that, if its LHS was a closure, it
    would execute the closure multiple times to get values.

    Joseph Ryan pointed out that that was what "map" was for.

    http://xrl.us/ciwq

    http://xrl.us/ciwr

  What's the core?
    A question arose about what modules would come as standard with Perl 6.
    Larry's argued previously for an utterly minimal basic distribution so
    as to encourage people to make use of CPAN rather that relying on the
    (possibly old, broken) that came with their Perl. Others were not
    convinced that this was a good idea.

    http://xrl.us/ciws

Announcements, Apologies, Acknowledgements
    Over the next few weeks I'll be moving the cut off day for these
    summaries from Sunday to Friday. Writing summaries on a Monday when you
    don't have to drive to Middlesbrough for work is pretty easy, but less
    easy when you do. So, by moving the cut off day I hope I'll be able to
    continue writing the summaries while I'm busy doing my teacher training.

    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 
    mailto:[EMAIL PROTECTED]

    http://donate.perl-foundation.org/ -- The Perl Foundation

    http://dev.perl.org/perl6/ -- Perl 6 Development site

Reply via email to