The Perl 6 Summary for the week ending 2004-07-04
    Another week, another Perl 6 Summary. This is becoming a habit.

    Let's do perl6-internals first shall we?

  Japhy's Perl 6 rules parser
    Last week Jeff 'japhy' Pinyan announced that he'd be working on a Perl 6
    rules parser once he'd finished his Perl 5 regex parser. This week saw a
    deal of discussion on how his parser worked. The answer seemed to be "It
    works the Right Way." Which is good. With any luck Steve Fink will be
    able to get this parser and the current (sketchy) Perl 6 compiler
    playing well together.

    http://xrl.us/ccie

  Complexities
    Last week Leo had pointed out that we'd need support for complex numbers
    in order to get the Piethon stuff running properly. This week there was
    some discussion of what was actually needed.

    Later in the week Ion Alexandru Morega posted a patch implementing them.
    I think Leo spoke for us all when he said "Whee, great, thanks -
    applied."

    http://xrl.us/ccif

  New mailing lists
    There was some discussion of how perl6-internals should be broken up. It
    looks like we'll see new lists called parrot-internals, parrot-compilers
    and parrot-library (for internals hackers, compiler implementers and
    library builders respectively). The original perl6-internals will carry
    on, but will be focused on the actual internals of Perl 6.

    Some, or all, of these lists will be covered in these summaries for as
    long as I can keep up.



  Stack language for Parrot
    In as impressive a delurk as I've seen in a while, Michael Pelletier
    announced that he'd been lurking for a while, playing with Parrot and
    had implemented a little stack language not entirely unrelated to Forth
    which he'd christened "Parakeet". He posted his implementation and got
    promptly Warnocked.

    http://xrl.us/ccig

  GMP and licensing issues
    Scott Bronson announced that he'd taken a look at GMP's license and he
    didn't think it was incompatible with Parrot's licenses. Dan wasn't
    convinced. Scott's still trying to convince him though.

    Robert Spier attempted to resolve the problem by pointing everyone at
    another possibly suitable library called IMath.



    http://xrl.us/ccih

Meanwhile, in perl6-language
  Argh! Strings!
    Discussion of the various ways of slicing and dicing strings in Perl 6
    continued. The issue is that, especially in a Unicode world, there are
    many ways of looking at a string, all of which are useful in different
    contexts. However, because you can look at a string as a sequence of
    bytes, codepoints, graphemes or whatever, then functions like "substr"
    get a little weird. If you were to say

        $substring = $a_string, 5

    then what does the '5' mean?

    And that's just one example of where conceptual problems can arise.

    I confess that, whenever Unicode comes up, my gut reaction is to keep my
    head down and trust that Larry's going to get it right. Certainly the
    current formulation seems decently sane; things only get problematic if
    you're trying to do something well out of the ordinary.

    http://xrl.us/ccii

  "if", "loop", and lexical scope
    Discussion of Perl 6's new scoping rules (things are generally more
    consistent than they are in Perl 5; if a variable is declared inside a
    block, or in that block's signature in the case of "-> $a, $b {...}"
    type blocks, then that block is its scope) continued. Some people like
    the new rules, others don't.

    http://xrl.us/ccij

  Different OO models
    Jonadab the Unsightly One had wondered about having objects inheriting
    behaviour from objects rather than classes in Perl 6. The gist of the
    answers he received was that it wouldn't be in the core of the language,
    but neither should it be too hard to implement something that worked how
    he wants.



  Undo?
    Michele Dondi wondered if Perl 6 would have a built in "undo" function
    for rolling back the history of a scalar (say). Rafael Garcia-Suarez
    pointed out that the concept wasn't a simple as it first appeared,
    especially in the context of threads, closures, side effects. He
    suggested that a better approach would be to implement a suitable
    transaction/rollback library that handled such things in an application
    appropriate fashion rather than using a 'half-baked kludge built into
    the base language'. Mark Biggar pointed out that the language already
    had hypothetical values, which did pretty much the right thing.

    Elsewhere in the thread, Luke Palmer attempted to explain continuations
    again. A sandwich was involved.

    http://xrl.us/ccik

    http://xrl.us/ccim -- Luke makes a continuation sandwich

  If not "," then what
    Alexey Trofimenko triggered your Summarizer's sense of deja vu when he
    asked what was happening to the C-style comma (we're keeping it, more or
    less) and proposing a "then" keyword for use in the contexts where Perl
    6's new "," didn't quite work the same way as in Perl 5. Which is pretty
    much the same as the proposal Luke Palmer made some months ago and which
    Larry rejected.

    Jonathan Lang pointed out how you'd implement "then" if you needed it
    though.

    The thread got slightly silly after this (sideways semicolons! I ask
    you!). I'm not sure what chromatic was driving at when he suggested a
    "meh" operator though.

    http://xrl.us/ccin

  "map", "grep" and laziness
    That man Alexey also had some questions about lazy evaluation. Luke
    Palmer attempted to allay his fears by saying that Perl 6 would be
    essentially lazy unless you told it otherwise.

    http://xrl.us/ccio

Announcements, Apologies, Acknowledgements
    Woohoo! Another weekly summary.

    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