The Perl 6 Summary for the fortnight ending 2004-08-20
    Harrumph. Note to self; never miss a week when you could actually have
    written the summary. I lulled myself into a false sense of security with
    the quiet week for the last summary. The last two weeks have been rather
    more busy and I've been away at EuroFoo over the weekend.

    So, this fortnight's summary might be a bit sketchy.

    We're back with starting with perl6-internals this time as it continues
    to comfortably out traffic perl6-language (message count was running
    about 3:1 in favour of p6i).

  Register allocation
    Work continued apace on adding a bullet proof failsafe register spilling
    algorithm so that Dan's work project could be made to at least compile.
    There was much discussion of what was actually causing the problem and
    several attempts to fix it. Work is ongoing.

    Melvin Smith coined a new acronym: DSWEPIC, which stands for Dan Stop
    Writing Evil Pathological Intermediate Code though, as chromatic pointed
    out, it's actually Dan's compiler that's generating Evil Pathological
    code and Dan claimed that that's because he's writing a compiler for an
    Evil Pathological language.

    http://xrl.us/cub5

  Parrot cvs mirrored with svk
    Chia-liang Kao announced that he (I'm guessing, I'm not very good at
    divining the gender of none western names. Sadly 'he' is usually a safe
    bet in this field though) was mirroring the Parrot CVS repository in a
    Subversion repository for those who didn't like CVS. There was a certain
    amount of chuntering but most people seemed pleased by this.

    http://xrl.us/cub7

  The Pie-thon post-mortem
    Dan posted his notes on the aftermath of the pie-thon push. Next time we
    do this, we'll start earlier.

    http://xrl.us/cub8

  An alternate call scheme
    Dan ruled on Leo's alternate call scheme proposal, but wasn't entirely
    comfortable with it. However, he sketched out another idea inspired by
    it. Leo didn't sound convinced.

    http://xrl.us/cub9

  Source mangling slides
    Dan posted a link to an abortive talk on some of the cunning tricks we
    do with source mangling in Parrot.

    http://xrl.us/cuca

    http://xrl.us/cucb

  Making NCI work with a nasty library
    Hildo Biersma is trying to write parrot support for IBM's MQ library. He
    had a couple of questions about the best way to go about it. Leo and
    chromatic had some suggestions.

    http://xrl.us/cucc

  Functions for embedders to override
    Noting that Ponie was already have problems, Dan outlined those
    functions that embedding environments may need to override to get things
    working. He asked for help and comments in getting a system in place to
    allow overriding functions to be registered in order to give embedders
    control over parrot's interface to the real world. This is something
    which needs doing sooner rather than later so as to avoid storing up
    pain.

    This triggered a fairly wide ranging discussion, but progress is being
    made.

    http://xrl.us/cucd

  What Unicode means to us
    Mmm... Unicode. Dan outlined what need to deal with to do Unicode
    sufficiently well. Discussion ensued.

    http://xrl.us/cuce

  Fix generation of src/nci.c to be more efficient
    I don't normally point out patches, but Dan's patch to improve the
    generation of src/nci.c spawned a longish thread with commentary from
    Nicholas Clark and chromatic.

    http://xrl.us/cucf

  A small task for the interested
    Dan posted another of his small tasks for the interested (maybe we
    should start calling them STFTIs?). This time he's after source tests to
    test the embedding interface and some fixing of the auto-prefix scheme.

    http://xrl.us/cucg

  The encoding API
    Dan detailed the encoding API, the layer that mediates between Parrot,
    which sees strings as a sequence of codepoints and the underlying buffer
    full of bytes. Gopal V and Michael Stone had questions and suggestions.

    http://xrl.us/cuch

  COBOL on Parrot?
    Remember Dan pointed everyone at a GPL'd COBOL compiler and suggested
    that a Parrot backend would be cool? David Essex (if that's the British
    singer from the 70s then I'll be boggling like a good 'un) pointed
    everyone at a couple of others. He and Uri Guttman discussed runtime
    libraries.

    http://xrl.us/cuci

  The Perl 6 compiler pumpking
    Patrick Michaud, Perl 6 compiler pumpking, outlined his plan for getting
    us to a working Perl 6 compiler.

    http://xrl.us/cucj

  PMC semantics
    Leo kicked off what looks like being a long running thread when he
    opened discussion of the semantics of the various integerish PMCs in
    Parrot. Larry and Dan both pitched in with discussion.

    http://xrl.us/cuck

  Charset API
    Dan posted part two of the charset API, which confused me slightly by
    arriving on my computer before Part 1.

    http://xrl.us/cucm -- Part 1

    http://xrl.us/cucn -- Part 2

  Handling block parameters in Ruby
    Mark Sparshatt asked for advice on how to handle method invocations that
    include special block parameters like Ruby's. Leo thought that handling
    it in the parser/compiler and simply passing the block in as an extra
    parameter was the best way forward. Larry and Dan discussed
    complications associated with that idea.

    http://xrl.us/cuco

  Parakeet breaks and recovers
    Michel Pelletier updated his Parrot distribution and managed to kill his
    Parakeet language. Dan and Leo set about trying to track the underlying
    bug down. I presume it got fixed because Michel posted a new version of
    Parakeet soon after.

    http://xrl.us/cucp

    http://xrl.us/cucq

NCI and callback functions
    Stephane Peiry had some problems getting NCI callbacks working with GTK.
    He and Leo went tried the debugging by email trick, but with little joy
    before the end of the week.

    http://xrl.us/cucr

  TODOs added
    Will Coleda added a vast number of TODO items to Parrot's RT queue.

    His TODO about the configuration system sparked a good deal of
    discussion. At least one person suggested ditching "make", which seems
    to be par for the course in these kinds of discussions.

    http://xrl.us/cucs

    http://xrl.us/cuct

  Popping an empty array
    Michel Pelletier wondered how to generate a catchable exception when he
    tried to "pop" from an empty PerlArray. Larry reckoned that, if it's
    really a PerlArray it should return an undef containing an unthrown
    exception. Which sparked a longish discussion...

    http://xrl.us/cucu

  Parrot interfaces
    Noticing that there appeared to be ops for handling interfaces, Michel
    Pelletier wondered when we might see an implementation or PDD covering
    their semantics. Our resident roles guy, chromatic, pointed out that
    Parrot will actually have roles, which can look like interfaces in the
    right light and pointed at Apocalypse 12 for more in the way of detail.

    Later on, Dan sketched out an initial interface spec. Parrot level
    interfaces are very simple indeed.

    http://xrl.us/cucv

    http://xrl.us/cucw

  Interpreter permissioning
    Felix Gallo sought input on the problem of interpreter permissioning. He
    got lots.

    http://xrl.us/cucx

  What?
    Dan Sugalski is a very, very bad man. Sure, he gets a good deal of
    mitigation from Parrot working as well as it does, but... well... Multi
    Method Dispatch on return continuations is sick, evil, and a strangely
    fascinating idea.

    http://xrl.us/cucy

  Span praise
    Dan's been catching up with his mail and popped his head up to say nice
    things about Span, a very pleasant looking OO language based around
    Parrot.

    http://xrl.us/cucz

  Incremental garbage collection
    Leo's working on implementing an incremental garbage collector for
    Parrot. The idea behind it is to reduce the amount of time the GC system
    spends with the world stopped. The response was generally positive, with
    discussion of potential edge cases.

    http://xrl.us/cuc2

    http://xrl.us/cuc3

  GC/DOD API
    Whee, a subject that's all acronym. That's Garbage Collection/Dead
    Object Detection Application Programming Interface for those of you who
    are bemused by the alphabet soup.

    Dan pointed out that, before we get a fully reworked garbage collection
    system in place, it would be a good idea to get the API designed and
    documented.

    http://xrl.us/cuc4

Meanwhile, in perl6-language
  Revision of Apocalypse 12's lookahead notions
    Larry posted a a message resolving issues with method lookahead and
    adverb parsing. And there was much discussion and clarification. Expect
    to see the results in Synopsis 12 when it gets written.

    http://xrl.us/cuc5

  Handling block parameters in Ruby
    Matt Diephouse spawned a subthread from the A12 lookahead discussion by
    wondering how Perl 6 will handle multiple blocks as arguments. Larry had
    some thoughts.

    http://xrl.us/cuc6

  Precedence table update
    Larry posted a newly tweaked Perl 6 operator precedence table. If you're
    one of those chaps who thinks Perl has too much syntax look away (or
    point and laugh depending on your persuasion) now.

    Various oversights were quickly spotted and fixed up.

    http://xrl.us/cuc7

  Synopses drafts
    Larry posted the first draft of Synopses 1, 2 and 4 the condensed,
    updated, versions of their respective apocalypses. The list did the
    usual proofreading/patching thing.

    http://xrl.us/cuc8

    http://xrl.us/cuc9

    http://xrl.us/cuda

  Return with no expression
    Matt Diephouse found something surprising in Perl 5's handling of a
    return with no arguments and wondered if Perl 6 would magically solve
    his problem. Luke thinks it'll do the right thing by making the right
    hand side of a "=>" evaluate in a scalar context.

    http://xrl.us/cudb

  "<->" as "->" with automatic "is rw"
    Juerd scared me by proposing that "<->" be the equivalent of "->" with
    an implicit "is rw". Larry declared "It's really sick, and cute, and I
    love it." but thought that there might already be too many ways to
    declare a sub.

    http://xrl.us/cudc

Announcements, Apologies, Acknowledgements
    Phew! I think I got this finished just before 'press' time for perl.com.
    Or maybe not.

    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 feedback or contributions to a
    'getting Piers to OSCON 2005' fund to mailto:[EMAIL PROTECTED]

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

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

    Oh yes, there's new content on my website for the first time in an age.
    Enjoy.

    http://www.bofh.org.uk/

Reply via email to