The Perl 6 summary for the month of 2006-03 Summary updates
It was pointed out that I was unclear about URLs. I will be using long (original) URLs for web editions and short URLs for mail editions. Compiler (perl6-compiler) make error on 9188 <http://xrl.us/o5xb> Beau E. Cox reported a failure with Pugs r9188, which failed to make smoke and make install. A patch was submitted. Fwd: The "lrep" thing <http://xrl.us/o5xc> Flavio S. Glock posted some information from #perl6 on the phases of Perl 6 development. This included a request to coordinate development efforts. XML parsing in P6 <http://xrl.us/o5xd> Premshree Pillai asked about XML parsing in Pugs. Yuval Kogman made some recommendations. Support for S05's new "result object"? <http://xrl.us/o5xe> Audrey Tang asked if PGE would allow--for instance--making a lexical symbol RETURN visible inside the interpolated block, which would set the result object and return a match success at that position. Patrick R. Michaud had an affirmative reply. There was also a brief discussion on {...} {{...}} for closures in Parrot and Perl 6. PGE internal attributes change <http://xrl.us/o5xf> Patrick R. Michaud noted that r11916 updates PGE's internal attribute names to match the new secondary sigils identified by S12. PGE: return values in embedded closures <http://xrl.us/o5xg> Patrick R. Michaud applied r11921 to PGE to allow embedded closures in rules to designate a "return value" for a match. Perl 6 on Solaris 10 anyone? <http://xrl.us/o5xh> Stefan Parvu asked if there had been any experiments with Perl6/Parrot and Solaris Express or Solaris 10. Andy Dougherty replied that he did not think there were pre-built packages, but that most tests should pass. There was also some clarification of the relationship between Perl 6, Parrot and Pugs. Parrot-Porters (parrot-porters, formerly perl6-internals) The parrot-porters list was called perl6-internals during the period covered by this summary. Compiling Parrot on NetBSD <http://xrl.us/o5xi> Steve Peters supplied a patch to support Parrot on NetBSD. Andy Dougherty asked if the different flavours of BSD were distinct enough to require different directories. Steve replied that NetBSD differed from FreeBSD, but said that the directory structure should be chosen based upon the preferences of the Parrot developers. Later, Bernhard Schmalhofer created a ticket [perl #38670] <http://xrl.us/o5xj> with Steve's NetBSD support patch <http://xrl.us/o5xk>. NCI 'v' versus '' in function parameter signatures <http://xrl.us/o5xm> In February, Tim Bunce asked what the difference is between 'v' and '' for NCI function parameters. Leopold Toetsch replied by suggesting that the 'v' variants be removed. Later, Tim submitted a patch, which looked okay to Leopold. chromatic pointed out that functions returning void should use 'v' to avoid future confusion, and Leopold agreed. Fix for tailcall after newcloser <http://xrl.us/o5xn> Bob Rogers sent PIR code illustrating a problem in tailcall which forces the old context to be recycled and included a patch. Rare failure of t/dynoplibs/myops alarm sequence <http://xrl.us/o5xo> Tim Bunce noted a failing alarm sequence test in t/dynoplibs/myops.t but has not been able to duplicate it. Leopold Toetsch reported that this could happen if the machine was busy. Tim requested a warning, and Leopold agreed it would be appropriate. Valgrind reports <http://xrl.us/o5xp> chromatic got Valgrind working on his Linux PPC box and wanted to know if the reports would be useful. Leopold Toetsch welcomed the information. Todo: fill Parrot_register_move() <http://xrl.us/o5xq> Leopold Toetsch created a ticket [perl #38627] <http://xrl.us/o5xr> with the todo item 'fill the function body of Parrot_register_move()' in src/utils.c. Karl Forner asked for more details about the request, and Leopold offered information. socklen_t not defined <http://xrl.us/o5xs> David Dyck replied to [perl #37906] <http://xrl.us/o5xt>, indicating that he had made progress with the link phase error. Bernhard Schmalhofer requested a patch and test results. David replied that his modifications were just to make the code compile and should not form the basis for a patch. Allowing push/pop across sub calls <http://xrl.us/o5xu> Bob Rogers submitted a patch to allow push/pop across sub calls with the caveat that it breaks PGE. He requested help from someone who understands PGE. Patrick Michaud looked in to the problem. Leopold Toetsch, Chip Salzenberg and Will Coleda also spoke up on the use of the user stack. Actions aren't called at :outer sub exit <http://xrl.us/o5xv> Bob Rogers reported that actions are not being called when an :outer sub exits. He supplied a patch and noted that there was another bug in the same region, which he currently does not have time to address. Parrot versus NekoVM <http://xrl.us/o5xw> Nicholas Cannasse made a benchmark comparing Parrot Win32 and NekoVM which showed Parrot was five times slower and asked why that might be the case. Leopold Toetsch replied that benchmarks are just lies, but went on to offer an explanation. There were a few other comments on the subject. Lua PCM and garbage collection segmentation fault <http://xrl.us/o5xx> Francois Perrad noted a segmentation fault in languages/lua/t/tables_3.pir. Incompatible change with PASM function call syntax <http://xrl.us/o5xy> In r11801, Leopold Toetsch introduced a change in the call argument bits which required all PASM code using function calls to also be modified. Question on pdd21 <http://xrl.us/o5xz> In implementing pdd21, Leopold Toetsch had a question on namespaces. Chip Salzenberg had some answers, which led to more questions from Leopold, and another response from Chip. Patch for nested macro support <http://xrl.us/o5x2> Joshua Isom wrote several patches. One was a patch to imcc.l and imclexer.c, a second contained a set of macros, and the third demonstrates many of the macros. Chip Salzenberg was fairly pleased with the ideas. The changes were committed in r11820. OS X bus error in punie-clone <http://xrl.us/o5x3> Will Coleda reported in [perl #38691] <http://xrl.us/o5x4> that a slightly modified snapshot of punie caused an error. He included details of the problem. Parrot 0.4.0 to 0.4.2 upgrade problem <http://xrl.us/o5x5> James Cloos reported that when upgrading from Parrot 0.4.0 to 0.4.2 there was a failure with make install. HLL-mapped .Sub PMCs <http://xrl.us/o5x6> Leopold Toetsch announced that r11852 made some modifications to HLL-mapped .Sub PMCs. Small POD error <http://xrl.us/o5x7> According to Douglas Hunter, languages/pugs/pmc/pugsany.pmc contained an 'over 4' without a 'back', which made Pod::Simple fail. He included a patch. Unused and unimplemented opcodes <http://xrl.us/o5x8> Leopold Toetsch reviewed some opcodes in core.ops which aren't implemented, and proposed some deletions and modifications. Steve Peters and Jonathan Worthington agreed with the changes, and Leopold implemented them in r11882. MAYBE_FLAT discussion <http://xrl.us/o5x9> Audrey Tang questioned the decision to remove MAYBE_FLAT in r11754 without a warning. Chip Salzenberg apologized and instead created a document patch <http://xrl.us/o5ya> to address the issue. tailcalls into the PIR compiler broken <http://xrl.us/o5yb> In ticket [perl #38724] <http://xrl.us/o5yc>, Matt Diephouse noted this error. Leopold Toetsch fixed it with revision r11896. pdd21 questions <http://xrl.us/o5yd> Leopold Toetsch had some questions for Chip Salzenberg. Other people also replied to the thread. Global not found between PIR and PMC <http://xrl.us/o5ye> Francois Perrad posted some code and asked what mistake he'd made. Leopold Toetsch responded, which launched a discussion between Leopold and Chip Salzenberg over :: in pdd21. Support utf8 as an input IO filter <http://xrl.us/o5yf> Will Coleda created a todo request in [perl #38733] <http://xrl.us/o5yg> for a UTF-8 filter. Comments on namespace patch part 23 <http://xrl.us/o5yh> Chip Salzenberg responded to Leopold Toetsch's document with comments. One of his questions concerned the rationale behind the parrot:: namespace, which Leopold explained. .None PMC now returns empty string instead of "None" for get_string <http://xrl.us/o5yi> Jerry Gay made a modification to the .None PMC in r11911. Combining :slurpy and :optional <http://xrl.us/o5yj> Patrick R. Michaud had a question concerning combining :slurpy and :optional as an optimization. parrotcode.org updated (0.4.1 to 0.4.2) <http://xrl.us/o5yk> This was done. PGE update fails some tests under x86_64 <http://xrl.us/o5ym> Patrick R. Michaud reported that r11921 broke some PGE tests. He requested that someone with more knowledge in this area look in to the problem. Remove enum_class_max <http://xrl.us/o5yn> Leopold Toetsch created a todo ticket [perl #38756] <http://xrl.us/o5yo> for replacing old globals with real interpreter variables. complex.exp - gcc issues <http://xrl.us/o5yp> In [perl #38757] <http://xrl.us/o5yq>, Leopold Toetsch reported a bug, which Joshua Isom elaborated on. r11923 <http://xrl.us/o5yr> Allison Randal made some modifications, and Nick Clark commented on it. parrot-0.4.2 on FreeBSD 4.10 failure <http://xrl.us/o5ys> Pankaj Kaushal reported a bug in parrot-0.4.2 and included the result of gmake tests in ticket [perl #38764] <http://xrl.us/o5yt>. TGE, precompile more <http://xrl.us/o5yu> Will Codela created a todo ticket ([perl #38761] <http://xrl.us/o5yv>) and chromatic submitted a patch. early draft of I/O PDD <http://xrl.us/o5yw> Allison Randal posted an early draft of the I/O PDD and requested comments. There was a great deal of discussion, especially on socket addresses, seek/tell, basic file IO, and integer types. A second draft was created, and it also received feedback. Changes to compilers/pge/rulec.pir broke punie <http://xrl.us/o5yx> Will Coleda created ticket [perl #38775] <http://xrl.us/o5yy> to report this error. Build broken on OS X? <http://xrl.us/o5yz> Will Coleda reported a problem with r11684 in ticket [perl #38597] <http://xrl.us/o5y2>. Joshua Isom noted that he had it working for r11676 and r11686, but that DYLD_LIBRARY_PATH needed to be set. This led to some discussion on the best way to do this. Eventually the problem resolved itself and Will closed the ticket. trans.t failure on OpenBSD <http://xrl.us/o5y3> In [perl #34549] <http://xrl.us/o5y4>, Steve Peters noted a test failure in t/op/trans.t on OpenBSD. Patches were submitted for a number of systems. r11994 failing tests on FreeBSD <http://xrl.us/o5y5> Ryan Hinton reported a number of failing tests in ticket [perl #38788] <http://xrl.us/o5y6> make PGE's rulec read utf8 <http://xrl.us/o5y7> Will Coleda added a patch to promote UTF-8 encoded grammar rules. rulec.pir should report line numbers on failure <http://xrl.us/o5y8> Will Coleda created a todo request ([perl #38794] <http://xrl.us/o5y9>) for better error reporting. parser_util.c memory overrun <http://xrl.us/o5za> Andy Dougherty supplied a patch ([perl #38784] <http://xrl.us/o5zb>) to prevent Parrot from reading possibly unallocated memory. rebuild language makefile without full re-configure <http://xrl.us/o5zc> Will Coleda added a todo item as ticket [perl #38796] <http://xrl.us/o5zd>. CPP Comment tester overzealous <http://xrl.us/o5ze> Will Coleda created a todo ticket ([perl #38797] <http://xrl.us/o5zf>) showing the problem. PMC and object creation <http://xrl.us/o5zg> Leopold Toetsch would like an instantiate hook and felt that none of the current 14 new opcodes provided the required functionality. There were several suggestions. property hash changes r12043 <http://xrl.us/o5zh> Leopold Toetsch introduced a change to use Hash instead of PerlHash for properties. libparrot.so.0.4.2 <http://xrl.us/o5zi> Sean Sieger reported being unable to get Parrot to run on Ubuntu 5.10. This led to a lengthy discussion of the problem. Strange dump output from PGE (x86_64 related? <http://xrl.us/o5zj> Patrick R. Michaud elaborated on the strange results he encounters on his x86_64 system and included example output from r12014. After some input, it was determined that it was a GC bug. Allow passing "todo = $reason" to Parrot::Test::example_output_is, like, isnt <http://xrl.us/o5zk> Bernhard Schmalhofer reported a bug with [perl #38760] <http://xrl.us/o5zm>. chromatic supplied a patch. skip #7 t/dynoplibs/myops.t for mingw <http://xrl.us/o5zn> Jurosz Michal submitted a patch ([perl #38810] <http://xrl.us/o5zo>) to bypass a Win32 MinGW infinite loop for "tree alarm test". The second version was applied as r12077. solaris 10 w gcc <http://xrl.us/o5zp> Leopold Toetsch reported a bug in [perl #38823] <http://xrl.us/o5zq>. Language (perl6-language) Separate compilation and compile-time things <http://xrl.us/o5zr> Zohar Kelrich had a comment involving varying results based upon which module compiler was used. Yuval Kogman replied that he felt Perl 6 should use separate compilers. Multisubs and multimethods: what's the difference? <http://xrl.us/o5zs> Joshua Choi asked for some clarification of the difference between multi sub infix:<.. ( Int $min, Int $max ) { ... }> and multi method infix:<.. ( Int $min, Int $max ) { ... }>. Larry Wall and others clarified that there is a difference. Perl 6 design wiki? <http://xrl.us/o5zt> Yuval Kogman suggested the creation of a wiki for several reasons: so that annotations can be attached to synopses, scratchpads are public, etc. Mark Overmeer was supportive but did express some concern about creating another forum, and also about the porting process going on for Perl 5 modules. Discussion on three level namespaces followed. S06 Splicing clarification <http://xrl.us/o5zu> Brad Bowman asked for more information about splicing. Audrey Tang and Larry Wall replied. RFC - weird stuff I had to do (for fun or profit) <http://xrl.us/o5zv> Yuval Kogman requested stories on strange things people have done in the past in the hopes of creating a better understanding unusual uses of Perl 5. He posted his own stories, and a summary of what he learned. Larry Wall had a few comments. comment scope <http://xrl.us/o5zw> Ruud H.G. van Tol suggested a lexical scope for comments. This led to a discussion of POD syntax. Where can I download perl6? <http://xrl.us/o5zx> Apo purchased 'Perl 6 Essentials' and wondered where Perl 6 could be found. Conrad Schneiker provided a link to Pugs, with the caveat that much of the information in the book is outdated. Multiparadigm Programming <http://xrl.us/o5zy> Conrad Schneiker pointed out an interesting book he'd seen at the library and requested that someone write a Perl version at some point. why no negative (auto reversed) ranges? <http://xrl.us/o5zz> TSa noted that S03 explicitly disallows auto-reversed ranges and asked why that was the case. Larry Wall noted that to date, nobody wanted it. where will we die to? <http://xrl.us/o5z2> Yuval Kogman brought up a Catalyst problem debugging the eventual location of a die within a cascade of evals. He suggested that Perl 6 should make it easier to trace an exception. Larry Wall asked how this could be done without impacting performance, and Yuval clarified his request. UNIX commands: chmod <http://xrl.us/o5z3> Gabor Szabo had a proposal for some alterations to chmod. There was discussion on his suggestions. Acknowledgments If you appreciate Perl, consider contributing to the Perl Foundation <http://donate.perlfoundation.org> to help support the development of Perl. Thank you to everyone who has pointed out mistakes and offered suggestions for improving this series. Comments on this summary can be sent to Ann Barcomb, [EMAIL PROTECTED] See also * Perl Foundation activities <http://blog.perlfoundation.org> * Perl 6 Development <http://dev.perl.org/perl6> * Planet Perl Six <http://planetsix.perl.org/perl6>