The Perl 6 Summary for the week ending 2005-07-19
    Welcome to another Perl 6 Summary, brought to you by the words
    'displacement' and 'activity'. So far today I've caught up with
    everything unread in NetNewsWire, my Flickr groups, every other mailing
    list I'm subscribed to and completed about 5 Sudoku. And now I'm
    dragging out this introduction and I don't know why; I enjoy writing
    these things.

This week in perl6-compiler
    Another quiet week on the list. However, you only have to watch the svn
    commit log and the other stuff on PlanetSix to know that things are
    still proceeding apace. Last time I looked it seemed that Stevan Little
    was working on bootstrapping the Perl 5 implementation of the Perl 6
    MetaModel so that it's implemented in terms of itself.

    Rather mindbogglingly, Pugs is now targeting Javascript as well.

    The Current Pugs release is 6.2.8

    <http://xrl.us/gtdv>

  Creating threads in BEGIN
    Nicholas Clark posted what he described as a 'note to collective self'
    wondering about how Perl 6 will cope with people creating threads inside
    BEGIN blocks. According to Luke "it won't". Larry thought that it might
    be okay to create threads at CHECK time, so long as any spawned threads
    didn't do any real work later than CHECK time.

    <http://xrl.us/gtdw>

  Perl 6 Modules
    Gav... (I presume the ellipsis is important to someone) wondered what he
    needed to do to write Perl 6 modules. Nathan Gray pointed him at the
    porting howto in the pugs distribution.

    <http://xrl.us/gtdx>

    <http://xrl.us/gtdy>

  Is namespace qualification really required?
    Phil Crow came across some weirdness with namespace resolution. It seems
    that you have to explicitly qualify function names in signatures.
    Autrijus agreed that it was a bug and asked for Phil to write a TODO
    test. Discussion ensued -- I think it's fixed in SVN now.

    <http://xrl.us/gtd2>

  Parsing perl 6 grammars
    Nathan Gray wondered about the state of Jeff 'Japhy' Pinyan's effort to
    implement a Perl 6 rules parser. Japhy said that it's been on hold for a
    while, but that he'd started to work on it again, basing it on his
    earlier Regexp::Parser module.

    <http://xrl.us/gtd4>

Meanwhile, in perl6-internals
  PMC changes?
    Nicholas Clark wondered if the PMC layout is likely to remain stable, or
    if there might be changes in relation to the generational garbage
    collector. In particular, he wanted to know if the API would remain
    stable. Leo thought that there might be changes in the layout, but the
    API shouldn't change.

    <http://xrl.us/gtd5>

  ParTcl Accelerator
    Will Coleda showed some timings for ParTcl, the Parrot implementation of
    Tcl and made a few suggestions about how to get things going faster.
    Patrick and Leo mused on the issues involved.

    <http://xrl.us/gtd6>

  Partitioning PMCs
    Nicholas Clark had some questions about making PMCs and Ponie play well
    together, with particular reference to using "SvFLAGS()".

    <http://xrl.us/gtd7>

  Embedding/extending interface
    Nicholas Clark wondered if chromatic was still waiting for confirmation
    that his automated embedding tools were the Right Thing. Apparently,
    chromatic is waiting for confirmation, but offered to send his existing
    patch, if only to force the discussion.

    <http://xrl.us/gtd8>

  Ponie Questions
    Nicholas Clark had a bunch of questions about various subsystems, mostly
    in relation to Ponie. Leo came good with answers.

    <http://xrl.us/gtd9>

    <http://xrl.us/gtea>

    <http://xrl.us/gteb>

  Parrot Project Management
    I'm not sure if Will Coleda's suffering culture shock about the way
    Parrot project management is done, or if we're really not doing it
    right. The first rule of Parrot/Perl 6 development is that if you really
    want something then the only way to guarantee that it gets done is to do
    it yourself. It's certainly worked for me over the years.

    <http://xrl.us/gted>

  Tcl GC issues... solved
    Matt Diephouse announced that as of r8617 in svn, the longstanding GC
    bug that was occasionally tickled by ParTcl has been fixed. There was no
    rejoicing on list, but at least one summarizer was really pleased to
    hear it.

    <http://xrl.us/gtee>

  GMC for dummies
    Summer of Code intern, Alexandre Buisse, who is working on a new GC
    system for Parrot pointed us all at an introduction to the Generational
    Mark and Compact scheme that he's working to implement. He and Leo had a
    discussion about implications, assumptions and other stuff.

    Bob Rogers asked some tricky questions relating to circular structures
    and timely destruction. Discussion of this continues.

    <http://xrl.us/gtef>

    <http://xrl.us/gteg>

  Register Allocation fun
    There was a flurry of patches from Curtis Rawls who appears to be
    working on refactoring and (one hopes) fixing the IMCC register
    allocator. Way to go Curtis.

  Meanwhile in perl6-language
  MML dispatch
    The ongoing discussion of the right way to dispatch multimethods is
    still, um, going on. Damian and Luke appear to have a fundamental
    disagreement about what's the Right Thing. "Manhattan!" "Pure!"
    "Manhattan!" -- it's not quite that bad, but positions seem to have been
    entrenched for a while. Elsewhere in the thread, Larry mused on which
    was more general, classes or roles. Thomas Sandlaß wondered how they
    stood in relation to types.

    Your summarizer wondered how he was ever going to explain all this and
    punted.

    <http://xrl.us/gteh>

  Method calls on $self
    My eyes, they burn! At this rate I'm simply going to use $?SELF in all
    my Perl 6 classes. Larry's latest suggestion seems to please even fewer
    people than "./method", which is really saying something. As someone
    who's not a fan of "./", I was slightly surprised to find myself
    agreeing with Autrijus who reckons you get used to it really quickly.

    <http://xrl.us/gtei>

  The Perl 6 Library system
    In response to a question from Autrijus about coderefs in @INC or
    whatever Perl 6 is going to call it, Larry mused on the possible
    eventual design of Perl 6's library system. It seemed to me that he was
    dropping a rather heavy hint to any interested readers who might like to
    come up with a first cut of Perl 6's library system.

    Later he did some thinking aloud about treating strings as arrays or
    vice versa.

    <http://xrl.us/gtej>

    <http://xrl.us/gtek>

  Method Resolution Order
    Stevan "MetaModel" Little cheered Larry's statement that methods, subs,
    submethods and "anything in between" all live in the same namespace. If
    you want to give two code like things the same name then you have to
    explicitly declare them as multi.

    Stevan went on to ask a bunch of questions about the semantics of method
    resolution so as to get the Perl 6 MetaModel working right. Discussion
    ensued.

    <http://xrl.us/gtem>

  Type::Class::Haskell does Role
    I haven't the faintest idea what Yuval Kogman is talking about. Dammit I
    need to learn Haskell now. Luckily Autrijus, Luke, David Formosa and
    Damian did seem to understand it. There was ASCII art and everything.
    Sadly no Unicode art, but it's only a matter of time.

    <http://xrl.us/gten>

  Optimization pipeline
    Yuval Kogman posted an outline of the optimization pipeline idea that
    he'd brought up in a hackathon. If confess that it looks rather like
    something that got discussed a few months (years?) ago which Chip had
    shot down rather convincingly. (I remember this because I was taking
    pretty much the same position as Yuval, and I really didn't want to be
    convinced...)

    <http://xrl.us/gteo>

  STM semantics, the Transactional role
    Yuval Kogman discussed some issues with STM (Something Transactional
    Memory -- I'm hazy on the 'Something' and far to lazy to Google). A
    short discussion ensued.

    <http://xrl.us/gtep>

  More Method Resolution Order Questions
    Returning from reading up on method resolution orders and class
    precedence lists, Stevan Little had a pile of questions and suggestions
    about Perl 6's method resolution semantics. He's plumped for using 'C3'
    as Perl's algorithm of choice and is implementing it in Perl6::MetaModel
    until and unless @Larry decides differently. He's off to a flying start
    in that the One True Larry thinks it's a good idea.

    <http://xrl.us/gteq>

  Accessor only virtual attributes
    Sam Vilain wondered what would happen if he made an 'accessor' for an
    attribute that didn't really exist. He wanted to be able to disguise
    accessor methods as attributes within class and subclass scope (at
    least, I think that's what he wants). Larry seemed to think he was
    barking up the wrong tree -- class attributes are only likely to be
    accessible using the "$.whatever" form within their declaring class and
    not any subclasses. Larry's 'got some driving to do' so expect some more
    thoughts about this in the next summary.

    <http://xrl.us/gter>

  Strange interaction between Pairs and named binding
    Autrijus noted that, although:

        for [1..10].pairs -> Pair $x { say $x.value }

    works,

        for [1..10].pairs ->      $x { say $x.value }

    doesn't. Which is somewhat counter intuitive. The problem is, the pair
    is being treated as a named argument specifier in the second case. After
    discussion, Autrijus suggested that the best thing might be to specify
    that the 'Bare' code object (which includes pointy and non-pointy
    blocks) have 'Any' as a default parameter type -- essentially turning
    off the special behaviour of Pairs when calling named blocks. I'm all
    for this myself, but Larry has yet to speak.

    <http://xrl.us/gtes>

  How do subroutines check types?
    Ingo Blechschmidt had some questions about specifying types in
    subroutine definitions. Specifically he wanted to be able to specify
    that a sub only take instances of a class Foo and its subclasses but not
    the class Foo (or its subclasses) itself. Thomas Sandlaß thought that
    what Ingo wanted is the default behaviour and you actually have to do
    some work to get it to behave any other way.

    <http://xrl.us/gtet>

  Referring to package variables in the default namespace
    Matthew Hodgson asked for some clarification of how the default package
    namespace works. Apparently pugs and Synopsis 10 are slightly at odds.
    Larry had some answers. Matthew probably has some more questions.

    <http://xrl.us/gteu>

Crikey! That went quickly
    Or, for the traditionalists among you

Acknowledgements, adverts, apologies and alliteration
  Hunting the perfect archive
    I'm still on the lookout for a replacement for Google groups for my
    message links. What I need is an archive that's up to date with the
    lists, and has URLs that can easily be derived from Message-IDs. Bonus
    points for good thread handling.

  Help Chip
    <http://geeksunite.org/>, tell all your friends, this cannot stand.

  The usual Coda
    If you find these summaries useful or enjoyable, please consider
    contributing to the Perl Foundation to help support the development of
    Perl.

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

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

    Check out my website, now running on a different blog engine and adorned
    with some new articles. Will wonders never cease?

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

    Vaguely pretty photos by me can be found at:

    <http://xrl.us/gtev>

Reply via email to