develooper Front page | perl.perl6.compiler | Postings from April 2005

Perl 6 Summary for 2005-03-22 through 2005-04-05

From:
Matt Fowles
Date:
April 5, 2005 20:48
Subject:
Perl 6 Summary for 2005-03-22 through 2005-04-05
Message ID:
f2601a7f0504052047744f7f12@mail.gmail.com
  Perl 6 Language
   ceil and floor
    Ingo Blechschmidt wondered if ceil and floor would be in the core.
    Warnock applies... Although Unicode operators would let me define
    circumfix \lfloor \rfloor (although I only know how to make those
    symbols in tex...). Hmmm... using tex to right Perl 6 code...
    interesting idea... at least then I could figure out how to make all the
    special symbols. Maybe someone should make a package for that.

    <http://xrl.us/foe7>

   s/// object?
    Stevan Little wanted to know if s/// could return some sort of magic
    object that could be poked or prodded. Larry explain, "no".

    <http://xrl.us/foe8>

   markup like features
    Michele Dondi asked if perl 6 would have markup like features in it.
    Luke Palmer asked for a more full explanation of what was meant. Warnock
    applies.

    <http://xrl.us/foe9>

   the many moods of " does "
    Thomas Sandlaß wondered if S14 would actually be written or if tie/bless
    were eaten by does, enumerating the many powers of does. Larry explained
    that does will probably have mutated bless and then explained the
    contexts under which does does each of its powers.

    <http://xrl.us/fofa>

   the many moods of " does "
    To follow up his question about does, Thomas Sandlaß wondered about is
    (specifically whether it stubbed or initialized its variable). Larry
    explained that is would probably initiliaze its variable and explained
    how one could use " is Ref " to stub but not initiliaze something.

    <http://xrl.us/fofb>

   perl5 -> perl6 converter
    Adam Kennedy dropped a line to the list about PPI 0.903, which could
    form a good base for a Perl 5 to Perl 6 convert. Larry explained that he
    was actually using PPD (the actual Perl parser) to construct such a
    tool. He also explained his approach on how he was going to do it.
    Actually it is a really cool approach for those of you who like elegant
    design approaches, you should check it out. I'll give you a hint, it
    starts by writing a glorified version of cat.

    <http://xrl.us/fofc>

   p5 library compatibility?
    Andrew Savige wondered if p6 would maintain the interface for most p5
    libraries. chromatic almost died of fright from the suggestion. Juerd
    suggested a deprecated namespace for such things. Larry gave him a ponie
    instead. Later Larry thought that perhaps a special namespace for those
    libraries that could be automatically converted might be appropriate.

    <http://xrl.us/fofd>

    <http://xrl.us/foff> -- later

   importing constants and header files
    Song10 wondered if there was an easy way to import constants from a
    module and not have to specify their full scope in the includers file.
    Larry explained that p6 would have "policy" modules which would allow
    this. He then began to let his mind explore the possibility of allowing
    these modules to return a string to evaluate in the user's scope. Then
    he realized how nasty textual inclusion was in C and C++, and figured
    that a hygenic policy would be better.

    <http://xrl.us/fofg>

   giving lists more operators
    Juerd constructed a table of string, integer, and list operators. He
    noticed that list had blank spots where string and integer both had
    things. He then suggested quite a few more operators to fill these
    blanks... This morphed into a discussion of code complexity and reading
    code.

    <http://xrl.us/fofh> -- operators

    <http://xrl.us/fofi> -- complexity

   string pain
    Chip wondered what exactly set " str " apart from "Str" and the impact
    this had on Unicode support. Larry and Rod Adams explained that " str "
    specified a raw bytes view of strings and required explicit casts
    between different Unicode levels.

    <http://xrl.us/fofj>

   xx on CodeRefs
    Luke Palmer wondered if the xx operator could be overloaded to
    repeatedly run a coderef and slap the results together. Other liked it,
    but no word from on high.

    <http://xrl.us/fofk>

   running pugs
    Adam Preble had some strange problems with Pugs's make install target.
    Warnock applies.

    <http://xrl.us/fofm>

   maniplulation many dimensional hashes
    Zhuang Li wanted to know how to manipulated hashes of unkown dimension.
    Luke Palmer provided the answer.

    <http://xrl.us/fofn>

   Semantics of Currying
    Yuval Kogman has been implementing currying in PUGS. As such, he has
    found some of the corner cases that have not been well specified. Thus
    he, Larry, Luke Palmer, and Thomas Sandlaß delve into these mysteries.

    <http://xrl.us/fofo>

   multi paradigmatic perl 6
    Someone named Eddie posted a fairly long message to p6l on the google
    groups interface suggesting that Perl 6 support delegation and other
    programming paradigms. Sadly, no one told him that it already does both
    of those things, because nobody got his email. Google groups does not
    send messages back to the list.

    <http://xrl.us/fofp>

   NB for PUGS on low memory machines
    Adam Preble posted a helpful warning about installing PUGS on machines
    with less than 200 MB of memory. Unfortunately he also posted it to
    google groups. People should stop doing that. Is there some way to tell
    google to not let them do that?

    <http://xrl.us/fofq>

   PLEAC
    Tim Bunce suggested that people could add programming examples to PLEAC
    for Perl 6, of course they should run in PUGS if they are being released
    to the world at large...

    <http://xrl.us/fofr>

   annotating code with documentation
    Chip wants to be able to document his code by attaching documentation
    directly to it. This would allow for nifty introspective features. Larry
    pointed out that the surrounding POD would actually be made available to
    the code.

    <http://xrl.us/fofs>

   typo in S03
    Aaron Sherman pointed out a typo in S03. Luke Palmer explained that
    dev.perl.org did not mirror the svn tree just yet. Juerd found one too,
    but got the same answer. But this time Robert Spier put in the necessary
    magic so that dev.perl.org would update from svn.perl.org.

    <http://xrl.us/foft> -- Aaron's

    <http://xrl.us/fofu> -- Juerd

   optimization hints
    Yuval Kogman noted that Perl 6 has some ability to provide lexically
    scoped hints and suggested a few more thinkgs that might be hintable.
    Larry opened the door for him to try and design such features.

    <http://xrl.us/fofv>

   S29 update
    Rod Adams efforts to update S29 continue to push a very large thread
    about things including numification of strings and various core
    operators.

    <http://xrl.us/fofw>

   string positions
    Aaron Sherman wanted a more OO way to look at the OS. Larry did not
    really agree but felt that one could create a proxy object which would
    reference all of those globals. Also, a conversation about having units
    attached to numbers sprang up. Sounds like a good module to me.

    <http://xrl.us/fofx>

   modify and assign operators
    Andrew Savige wondered if there was a complete list of operators
    anywhere, because he could not find ~^= (string xor) documented
    anywhere. Larry explained that the assign should probably be a meta
    operator to allow for better extensibility

    <http://xrl.us/fofy>

   p5 -> p6 guide
    Adam Preble wondered if there was a basic p5 -> p6 guide. Unfortunately
    he posted to google groups.

    <http://xrl.us/fofz>

   $_.method vs $self.method
    The debate about whether .method should mean $self.method or $_.method
    continued. $self is still winning.

    <http://xrl.us/fof2>

   typo problems
    It seems that Juerd has typing problems. He wanted to know if he could
    form a support group. Apparently only if he uses vim.

    <http://xrl.us/fof3>

   renaming flattening and slurp
    Terrence Brannon wants to change the name of flatten and slurp to
    something else. Larry told him that this usage was unlikely to change.

    <http://xrl.us/fof4> -- flatten

    <http://xrl.us/fof5> -- slurp

   how read-only is read-only
    Chip wondered how deep read-only-ness or is copy-itude went on
    arguments. The answer appears to be shallow. This led to a very long
    discussion of how much type checking would actually occur.

    <http://xrl.us/fof6>

   pick on non-junctions
    Ingo Blechschmidt wondered what pick would do on an array or a hash.
    Many folk explained that it would remove and return an item or pair from
    the container respectively. Larry comented that pick on a hash could be
    harder then it looks...

    <http://xrl.us/fof7>

   built in multi methods
    Wolverian wondered if some of the common functions called on strings
    would actually be methods. Larry answered that they would more likely be
    multi's to allow for easier extension.

    <http://xrl.us/fof8>

   comparing to references
    Darren Duncan wanted to know if " =:= " was the correct operator for
    comparing if two variables refer to the same object. Larry explained
    that it was. This led to a debate about how easily one could deal with
    chains of references in Perl 6.

    <http://xrl.us/fof9>

  Perl 6 Compiler
   Pugs test failures
    Will Coleda worriedly reported 115 failing subtests in Pugs. Stevan
    Little explained that this was normal for between releases and was
    really more of a todo list than a problem.

    <http://xrl.us/foga>

   Pugs darcs repo
    Greg Buchholz noticed that the darcs repo for pugs has trouble staying
    up to date. Tupshin Harper suggested using `darcs whatsnew
    --look-for-adds --summary` to find the offending files.

    <http://xrl.us/fogb>

   BEGIN {} time
    Autrijus wondered when BEGIN was supposed to run. Markus Laire posted a
    useful summary of when the various CAPITAL things were run. Larry
    confirmed Autrijus suspicion.

    <http://xrl.us/fogc>

   YAML test output
    Nathan Gray wondered if he should change his tests log to YAML output.
    Stevan Little pointed him to Test::Harness::Straps which could collect
    test output and transform it.

    <http://xrl.us/fogd>

   semicolons in p6
    Andrew Savige found some strange behavior with respect to statement
    seperation in pugs. He thought that perhaps semicolons had changed their
    status. They haven't.

    <http://xrl.us/foge>

   ugly dog meets ugly bird
    Pugs r2^10 can compile p6 to imc which can be run by Parrot. I think I
    speak for everyone when I say "Wow. Nice work Autrijus.".

    <http://xrl.us/fogf>

   string interpolation and various special variables
    Andrew Savige noticed a could of odd corner cases for string
    interpolation in pugs. This led to a discussion of which special
    variables (like $!, $/, and $") would continue to exist.

    <http://xrl.us/fogg>

   code coverage metadata
    Paul Johnson posted a list of requirements he would like to see
    satisfied so that one can easily generate perl 6 coverage reports.
    Warnock applies.

    <http://xrl.us/fogh>

   Pugs Release
    As is the fashion, Pugs went through to minor releases during this two
    week period: 6.0.13 and 6.0.14.

    <http://xrl.us/fogi> -- 6.0.13

    <http://xrl.us/fogj> -- 6.0.14

   text editor support for Perl 6
    Darren Duncan suggested that it migth be a good idea for people to begin
    prepping their favorite text editors to handle Perl 6 syntax correctly.
    Why stop at syntax? I know I want to be able to type :perl6do in vim...

    <http://xrl.us/fogk>

   Makefile.pl
    Darren Duncan noticed that while most things in pugs were written in
    Perl 5, while Makefile.PL was still in Perl 5. He suggested that the
    Makefile.PLs in various modules be written in perl 6 also. He then began
    work on a pugs::Makemaker module.

    <http://xrl.us/fogm>

    <http://xrl.us/fogn> -- work begins

   Pugs to become a Perl6 -> Parrot AST compiler
    Autrijus explained that he was planning on steering pugs toward becoming
    a perl 6 -> parrot compiler which would interpret code (when parrot is
    not available) by mapping imc to haskel.

    <http://xrl.us/fogo>

   pugs re-org
    Stevan Little suggested rearranging the pugs repository a bit. The end
    result is that modules which aren't runnable in pugs (yet) should go in
    modules/ while those which are should go in ext/

    <http://xrl.us/fogp>

   YAPC::NA pugs hack-a-thon
    John Macdonald posted his plan for the YAPC::NA pugs hack-a-thon. His
    description of the location makes me want to take time off work to go to
    it....

    <http://xrl.us/fogq>

   split semantics
    Stevan Little found a bug in pugs's split. Autrijus fixed it, but noted
    that he had not replicated the full, bizarre semantics of perl 5 (which
    come from awk). Larry told him not to work too hard on it, as it would
    probably be provided through a separate function.

    <http://xrl.us/fogr>

   statement modifiers
    A bug in Pugs's parsing led Autrijus to seek information from a higher
    authority. Larry explained the power of statement modifiers.

    <http://xrl.us/fogs>

  Parrot
   move perl tests out of pmc/pmc.t
    Steven Schubiger volunteered to reogranize pmc/*.t last time. He did it,
    and leo applied the patches.

    <http://xrl.us/fogt>

   areas of focus
    Chip, in a circumloquacious attempt to come up to speed, indirectly
    asked what design issues needed attention. Leo explained the CPS issues
    that have been bogging down parrot of late.

    <http://xrl.us/fogu>

   improving mingw docs
    François Perrad provided a patch improving the documentation for
    building with MinGW. Leo applied part of it.

    <http://xrl.us/fogv>

   moving pmc2c2.pl or pmc2c.pl
    Matt Diephouse opened an RT ticket for cleaning up the file system
    (specifically pmc2c2?.pl).

    <http://xrl.us/fogw>

   The Learned Parrot
    Christian Aperghis-Tramoni reported that he has had success using parrot
    assembly as a teaching tool.

    <http://xrl.us/fogx>

   performance and parrot
    Falcon posted a series of questions about Parrot in a fairly general
    sense. Unfortunately, since he posted it to google groups, Warnock
    applies.

    <http://xrl.us/fogy>

   first MMD call
    Leo posted a first MMD call which uses an MMD PMC and a fair amount of
    hand done calling conventions set up.

    <http://xrl.us/fogz>

   OpenBSD atan2 trouble
    Steve Peters noticed that atan2 on OpenBSD is not quite right.

    <http://xrl.us/fog2>

   API change
    Leo changed various packfile functions to take an Interp* argument. This
    does change the embedding API, but it had to be done.

    <http://xrl.us/fog3>

   pmc2c2.pl cleanup
    Leo pointed out that pmc2c2.pl was not functioning correctly on all
    platforms. He put out a call for interested parties. Matt Diephouse
    provided a patch to clean up the internals of pmc2c2.pl a bit. Leo
    applied it. Peter Sinnott returned a $ that got lost in the shuffle,
    chromatic applied it. Matt went on to add better comments.

    <http://xrl.us/fog4> -- call

    <http://xrl.us/fog5> -- refactor

    <http://xrl.us/fog6> -- $ found

    <http://xrl.us/fog7> -- comments

   README.win32 update
    Klaas-Jan Stol provided an update to the README.win32 directions.
    Warnock applies.

    <http://xrl.us/fog8>

   SET_NON_ZERO_NULL
    Chip wondered why parrot had a SET_NON_ZERO_NULL macro and suggested
    removing it. The answer was of course speed. On architectures with a
    zero null, this can be a no-op and memory can be calloced. Otherwise it
    has to do something.

    <http://xrl.us/fog9>

   PMC constants
    Leo added support for .const things to imc. Unfortunately, the GC eats
    them so you can't use it.

    <http://xrl.us/foha>

   Garbage Collection and Hash creation
    Cory Spencer's LISP implementation revealed a bug in the hash creation
    sequence. Leo fixed it.

    <http://xrl.us/fohb>

   MD5 update
    Nick Glencross provided an update to the md5 library. Leo applied it.

    <http://xrl.us/fohc>

   tcl updates
    Will Coleda has been updating tcl. He moved the parser into a PMC. Then
    he tried to add octal and hex escapes only to discover missing
    transcodings. He also found missing hash functions, but Leo fixed that.

    <http://xrl.us/fohd> -- parser

    <http://xrl.us/fohe> -- transcodings

    <http://xrl.us/fohf> -- hash

   Logging IRC
    It has been suggested that we start to log IRC. Chip suggested that this
    might not be cost effective as such logs are 99% dross and 1% value. He
    suggests instead that people paste this good part into emails for the
    list. I know that I for one, would not volunteer to summarize IRC...

    <http://xrl.us/fohg>

   segfault generating config.fpmc
    chromatic (as his Linux PPC is want to do) found a bug in the build. He
    fixed it, and Leo applied the patch.

    <http://xrl.us/fohh>

   Lazy, Lazy Steve
    Leo added a first implementation of a Lazy PMC for Autrijus to play
    with.

    <http://xrl.us/fohi>

   Win32 make install
    François Perrad provided a patch fixing MANIFEST.generated for Win32.
    Warnock applies.

    <http://xrl.us/fohj>

   Parrot on Win32
    Ron Blaschke spent some time fixing Parrot on Win32, extending it to
    provide a shared library.

    <http://xrl.us/fohk>

   mod_parrot
    Jeff Horwitz released mod_parrot 0.2. It includes nifty features
    including the begining of an interpreter pool.

    <http://xrl.us/fohm>

   C90 cleanup
    Peter Sinnott moved a few declarations further up. Leo applied the
    patch.

    <http://xrl.us/fohn>

   MMD on argument count
    Leo added the ability to MMD on argument count and PMC types.

    <http://xrl.us/foho> -- count

    <http://xrl.us/fohp> -- types

   documentation typos
    Offer Kaye fixed a few typos. chromatic applied the patch.

    <http://xrl.us/fohq>

   pmc freeze.t
    Leo admired the tricksiness of Bernhard Schmalhofer in his freeze
    implementation.

    <http://xrl.us/fohr>

   sys.t failure on MinGW
    François Perrad fixed a test failure on MinGW. Leo applied it.

    <http://xrl.us/fohs>

   builtin namesspaces issue
    Peter Sinnott pointed out some failing tests. Leo fixed them.

    <http://xrl.us/foht>

   locate_runtime_file error
    Bob Rogers provide a patch to switch PARROT_TEST to 1 by default. Leo
    applied it.

    <http://xrl.us/fohu>

   bytecode reentrancy
    Nigel Sandever had some questions about how parrot and threading worked.
    Melvin Smith provided the answers.

    <http://xrl.us/fohv>

   Pugs Questions for Parrot FAQ
    Nicholas Clark noted that the question of why bother with Parrot when
    one has Pugs has come up recently. The answer was put into the Parrot
    FAQ: speed.

    <http://xrl.us/fohw>

   Pascal for Perl
    Sven Schubert wondered if people had any suggestions for how to get
    PAPAgei (his Pacal for Parrot compiler) up and running quickly. Leo told
    him to stick with the tools he knows rather than going to far afield.

    <http://xrl.us/fohx>

   infix op proposal
    Leo posted his proposal for how to revamp infix ops. Nicholas Clark and
    Luke Palmer asked a few questions.

    <http://xrl.us/fohy> -- discussion

    <http://xrl.us/fohz> -- more discussion

   lexical pad depth
    Cory Spencer wondered how to find the depth of the lexical pad stack.
    Leo told him how.

    <http://xrl.us/foh2>

   win32 exit codes
    Ron Blaschke noticed that there were tests failing on Win32 because the
    exit code was not in the high 8 bits, but was stored directly. Leo
    suggested we look to perl 5 for prior art on what to do.

    <http://xrl.us/foh3>

   other languages on parrot
    Bloves wondered if any other compilers were currently working towards
    targetting parrot. I pointed him to cardinal, a ruby compiler for parrot
    that appears dead.

    <http://xrl.us/foh4>

   Parrot64
    Adam Preble wondered if there has been any work on Parrot for AMD64. The
    answer is some, but nobody told him cause he posted to google groups.

    <http://xrl.us/foh5>

   Parrot win32-setup
    François Perrad provided a patch that creates a standard binary
    distribution for Win32. There was some debate over the name of the make
    target, but François is ready to send an updated version at Leo's
    command.

    <http://xrl.us/foh6>

   calling convention abstraction
    Leopold Toetsch proposed a calling convention abstraction that would
    allow Parrot to change its ABI a little more freely in the future. Roget
    Hale asked a few questions which Leo answered.

    <http://xrl.us/foh7>

   no 0 size arrays
    Ron Blaschke noticed a broken windows build, because of a 0 sized array.
    Leo fixed it.

    <http://xrl.us/foh8>

   unicode string literal assertion failed
    Will Coleda discovered a failing assertion in utf8.c Leo fixed it.

    <http://xrl.us/foh9>

   NCI call signature change
    Leo changed the call signature for NCI to make 'I' mean INTVAL, and 'J'
    mean Parrot Interpreter.

    <http://xrl.us/foia>

   builtin infix multis
    Leo added support for MMD on infix multis.

    <http://xrl.us/foib>

   touch vs utime
    Chip asked if there was a reason that the TOUCH variable doesn't use
    utime. Michael G Schwern suggested ExtUtils::Command. Steve Peters
    points out that utime will only work on existant files.

    <http://xrl.us/foic>

   make imcc.l for modern flex
    Chip opened a TODO for updating imcc.l to modern flex.

    <http://xrl.us/foid>

   OS X build broken
    Will Coleda reports that the build is broken on OS X with undefined
    symbols. Leo found the cause and reverted it.

    <http://xrl.us/foie> -- problem

    <http://xrl.us/foif> -- solution

   SVN switch
    After much debate, the decision to switch from CVS to SVN has been made.
    The move will be accompanied by a removal of ICU as a dependency. Good
    progress has been made on that front.

    <http://xrl.us/foig>

    <http://xrl.us/foih> -- progress

   MD5 on 64 bits
    Nick Glencross has been hard at work trying to fix the MD5 library for
    64 bits systems. It would be easier if he had access to one.

    <http://xrl.us/foii>

   Python Version Guesswork
    Ron Blaschke noticed that activestate python reports its build as 2.4
    instead of 2.4.0. He provided a patch to account for this.

    <http://xrl.us/foij>

  The usual footer
    To post to any of these mailing lists please subscribe by sending email
    to <perl6-internals-subscribe@perl.org>,
    <perl6-language-subscribe@perl.org>, or
    <perl6-compiler-subscribe@perl.org>. 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