develooper Front page | perl.perl6.compiler | Postings from November 2004

Perl 6 Summary for 2004-10-23 through 2004-11-01

From:
Matt Fowles
Date:
November 1, 2004 20:32
Subject:
Perl 6 Summary for 2004-10-23 through 2004-11-01
Message ID:
f2601a7f0411012032709957b4@mail.gmail.com
Perl 6 Summary for 2004-10-23 through 2004-11-01
    All~

    Welcome to another summary, this one being slightly delayed by
    Halloween. Before I start off with perl6-language, let me remind all
    American readers to vote tomorrow. Non-American readers should also
    vote, but it seems unlikely that your day of voting is tomorrow. So
    without further ado,

  Perl 6 Language
   assorted questions
    Rich Morin wanted to know two things. One, can he hook into function
    calls and just about everything else for his evil purposes. Two, can he
    get floating point values which automagically track their rounding
    errors. Austin Hastings pointed out that two would probably best be
    implemented as an opaque object whose value is a junction. Luke Palmer
    demonstrated an evil way to embed whatever hooks he wanted by adding an
    extra layer to the grammar. Somehow, I worry that shooting myself in the
    foot with this would take most of my body off...

    <http://xrl.us/drsq>

   Perl6 backwards compatibility
     U. Ruirarchzatrea expressed a desire for perfect backwards
compatibility to perl5 and a ponie too.  Matthew Walton, Brent 'Dax'
Royal-Gordon, and Luke Palmer all told him that he could have a ponie,
but it would not be perfect.

    <http://xrl.us/drsr>

  Perl 6 Compiler
    Sadly google still does not mirror p6c. Does anyone know someone who can
    be poked/prodded/pleaded with about this? End result: no links for you!

   Status check?
    Ovid popped in to see if he could find more detailed status info about
    the progress of p6c. Patrick Michaud provided a slightly unsatisfying
    answer of "not much longer", and Luke Palmer provided a slightly more
    detailed answer which can be summarized as "not much longer".

  Parrot Internals
   siva, the multifacetted pmc
    Stephane Payrard asked about some problems he had encountered creating
    the magical all in one Siva PMC. Leo provided a helpful prod towards
    LVALUE_CAST. The other problems may or may not related to the mandrake
    cooker. Hopefully someone will tell us.

    <http://xrl.us/drss>

   JITted functions calling external functions
    Leo reported that, thanks to Jeff, one can now call into Parrot
    functions from JIT. Yay!

    <http://xrl.us/drst>

   make testexec
    Currently make testexec will create and run a trivial "hello world"
    program for the exec core. Leo would like it to run the full test suite
    instead. This is a big thing, but would probably win you many friends
    and influence people.

    <http://xrl.us/drsu>

   Calling Conventions and Indirect Register Access
    Leo provided several warning that he was going to make some big changes
    that would break any code that did not follow the calling conventions.
    He went to implement and commit a whole lot of stuff. I was impressed,
    and Dan later wondered if it was all done or not (as he wants to make
    some big changes soon). Apparently it is for the most part.

    <http://xrl.us/drsv>

    <http://xrl.us/drsw>

    <http://xrl.us/drsx>

    <http://xrl.us/drsy>

    <http://xrl.us/drsz>

    <http://xrl.us/drs2>

   Stalk Walking Bug
    Nicholas Clark, with Leo's help, found a bug in the stalk walking code.
    Apparrently, our mask for valid pointers was a little over zealous.
    Nicholas checked in a quick fix. Steve Fink has a few suggestions.

    <http://xrl.us/drs3>

   Register Allocation
    Bill Coffman is continuing his amazing work with register allocation. He
    has been making strong progress, and his new code is fast approaching
    production ready. Unfortunately for Dan, it still has a few rough points
    and a small memory leak preventing it from being used on Dan's evil
    code. Leo has been helping him along the entire time, and I predict that
    all of Bill's work will find its way into Parrot before the next
    summary.

    <http://xrl.us/drs4>

    <http://xrl.us/drs5>

   libjit
    Robert Spier pointed out the fairly nifty libjit. Unfortunately,
    according to Leo, the current jit is far enough along that it would be
    too much work to switch. I tend to believe him.

    <http://xrl.us/drs6>

    -- libjit

    <http://xrl.us/drs7>

   Looking for a hardware donation
    H.Merijn Brand reminded Leo that he hadn't been contacted yet about some
    "Diana" menthol alcohol. I was confused, but apparently Leo wasn't...

    <http://xrl.us/drs8>

   pmc/inode analogy
    St├ęphane Payrard wanted to know if his analogy between pmcs and
    filesystems was correct. Leo felt that it was mostly right and attempted
    to explain value/variable split. Dan corrected Leo and went a little
    further. What I have taken away from this is "do not think of it in
    terms of high ;evel language operators, instead think of it in terms of
    C. You get pointers and values (and you can point to a value).
    Somethings do shallow copies (i.e. pointer copies) others do deep.

    <http://xrl.us/drs9>

   pmc_type
    Nicholas Clark wanted to know what a pcm_type of 0 means. The answer: no
    such type. This led to St├ęphane Payrard asking about pmc_type values for
    abstract types. They don't get types cause they can't be directly
    instatiated. This led Paolo Molaro to wonder about the virtue of having
    a system closer to C++ with array lookup for virtual functions.
    Nicholas, Leo, and Paolo banged on this for a while and decided that
    there was some room for optimization... Leo scares me when he
    optimizes...

    <http://xrl.us/drta>

   extend.c:Parrot_call
    Leo was bothered by the fact that Parrot_call only supported void return
    values. So, much to Jeff Horwitz's joy, he fixed it.

    <http://xrl.us/drtb>

   Computed Goto Destroyer of Weak Machines!!!
    Vijay D. though that parrot was failing to install when it "hung" while
    compiling the computed goto cores. Nick Glencross, Leo, Dan, Peter
    Sinnott, and Joshua Gatcomb all helped out explaining that cg is really
    hard on one's system and can be disabled with the --cgoto=0 flag to
    Configure.pl.

    <http://xrl.us/drtc>

   byte code
    Peter Hickman wanted to know if Perl 6 would be able to be distributed
    in bytecode. The answer is yes, but this won't help you hide your
    source, as that will frequently be necessary meta-data. It will,
    however, speed up your compilation and even allow mmap of the bytecode
    to share between threads.

    <http://xrl.us/drtd>

   Pirate/Python
    Sam Ruby has continued his work on Python and is making good progress.
    He was a little concerned about the speed issues of converting
    everything to dynclasses. He and Leo talked out some alternatives.
    Things are looking promising.

    <http://xrl.us/drte>

   threading issues
    Sam Ruby wanted to know about possible threading issues. Leo requested
    that they let the sleeping giant lie for a while longer...

    <http://xrl.us/drtf>

   .include "../relative path"
    Matt Diephouse added a todo item for .including with relative paths.
    Takers welcome.

    <http://xrl.us/drtg>

   Array fun
    Bernhard Schmalhofer added a few benchmarks for the various array PMCs.
    Leo applied the patch.

    <http://xrl.us/drth>

   Prederefed run cores
    Leo had some concerns about the prederef run cores. Dan suggested
    pitching them, but Leo opted to fix them instead. Some discussion of
    their relative values ensued, then someone started using assembly to
    support their point and my head exploded.

    <http://xrl.us/drti>

   Parakeet in CVS
    Michel Pelletier has finally gotten himself a perl.org account. The idea
    being that this would allow him to maintain Parakeet in CVS.
    Unfortunately, Warnock Applies.

    <http://xrl.us/drtj>

   GC crach
    Matt Diephouse found a way to make Parrot's GC crash. Leo fixed it with
    alacrity.

    <http://xrl.us/drtk>

   PPC JIT failure
    Jeff Clites found and fixed a bug in the grow-the-arena threshold for
    JIT. Leo seemed to feel that Jeff's solution was only a temporary one.

    <http://xrl.us/drtm>

   AIX PPC JIT warning
    Jeff Clites voiced some concern over the state of JIT on AIX. Adam
    Thomason told him "Worry not, it's already broken."

    <http://xrl.us/drtn>

   Call Chain Access
    Approrpiately, Leo found himself playing with chains around Halloween.
    He wondered if the call chain should have a PMC wrapper. Dan figured
    not, as ops which do evil things would be unlikely to invoked
    accidentally, whereas a PMC might...

    <http://xrl.us/drto>

   newsub opcodes
    Leo wanted to add some newsub opcodes to save allocations. Dan countered
    that it would be a better thing to get constant pmcs working properly.
    So Leo did.

    <http://xrl.us/drtp>

    <http://xrl.us/drtq>

    <http://xrl.us/drtr>

   pmc2c2.pm features.
    Leo suggested a couple extra features that he wanted in pmc2c2.pm. Sam
    Ruby supplied them.

    <http://xrl.us/drts>

   Build dynclasses by default
    Will Coleda provided a patch to build dynclasses by default. Leo is
    stalling before applying it, hoping to hear from other platforms. Now
    would be a great time to chime in... ::cricket noises:::

    <http://xrl.us/drtt>

   warnings for duplicate vars
    IMCC currently doesn't produce them. Will Coleda supplied a naive
    attempt at this, but Leo decided it would be better to do it the elegant
    way and split the PASM and PIR lexers/parsers apart.

    <http://xrl.us/drtu>

   Parrot on AMD64
    Brent 'Dax' Royal-Gordon managed to find an AMD64 for himself. Not only
    am I jealous, but Parrot passes all expected tests on it when one adds
    --ccflags=':add{ -fPIC }'.

    <http://xrl.us/drtv>

   dynopslib troubles
    Klaas-Jan discovered that dynopslib was failing. Leo concurred and asked
    for patches.

    <http://xrl.us/drtw>

   makefile bad $(TOUCH)
    Jeff Clites noticed that Makefile's $(TOUCH) does not actually work on
    many platforms and suggested a solution. Michael G Schwern suggested
    using ExtUtils::Command instead. Who knows what will finally happen?

    <http://xrl.us/drtx>

   Debug ops
    Dan wondered about adding some ops for debugging parrot code. The
    response was favorable and enthusiastic.

    <http://xrl.us/drty>

   parrot -t massive leaks
    Dan noticed that parrot -t leaks more memory then most cheap computers
    have.

    <http://xrl.us/drtz>

   hash vtable
    Sam Ruby wondered about adding a hash vtable method for Python's
    benefit. Dan seemed to think it was a good idea.

    <http://xrl.us/drt2>

   disassembler broken
    Matt Diephouse noticed that the dissambler was broken. Dan pointed out
    that he was testing it wrong. But Matt soon discovered that it didn't
    work even if he tested it right.

    <http://xrl.us/drt3>

   she-bangs for everybody
    James deBoer provided a patch adding shebang lines to config/*.pl. Brent
    'Dax' Royal-Gordon reasoned that these were unnessecary as these scripts
    should only be run by Configure.pl. James countered by offering a patch
    removing all of the shebang lines from the other ones. I like his style.

    <http://xrl.us/drt4>

    <http://xrl.us/drt5>

  The usual footer
    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 to ubermatt@gmail.com
    http://donate.perl-foundation.org/ -- The Perl Foundation
    http://dev.perl.org/perl6/ -- Perl 6 Development site
    http://planet.parrotcode.org/ -- Parrot Blog aggregator



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About