=encoding utf8 =head1 The Perl 6 summary for the month of 2006-03 =head1 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. =head2 Compiler (perl6-compiler) =head3 L Beau E. Cox reported a failure with Pugs r9188, which failed to make smoke and make install. A patch was submitted. =head3 L Flavio S. Glock posted some information from #perl6 on the phases of Perl 6 development. This included a request to coordinate development efforts. =head3 L Premshree Pillai asked about XML parsing in Pugs. Yuval Kogman made some recommendations. =head3 L 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 C<{...}> C<{{...}}> for closures in Parrot and Perl 6. =head3 L Patrick R. Michaud noted that r11916 updates PGE's internal attribute names to match the new secondary sigils identified by S12. =head3 L Patrick R. Michaud applied r11921 to PGE to allow embedded closures in rules to designate a "return value" for a match. =head3 L 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. =head2 Parrot-Porters (parrot-porters, formerly perl6-internals) The parrot-porters list was called perl6-internals during the period covered by this summary. =head3 L 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 L<[perl #38670]|https://rt.perl.org/rt3/Ticket/Display.html?id=38670> with Steve's L. =head3 L In February, Tim Bunce asked what the difference is between C<'v'> and C<''> for NCI function parameters. Leopold Toetsch replied by suggesting that the C<'v'> variants be removed. Later, Tim submitted a patch, which looked okay to Leopold. chromatic pointed out that functions returning void should use C<'v'> to avoid future confusion, and Leopold agreed. =head3 L Bob Rogers sent PIR code illustrating a problem in tailcall which forces the old context to be recycled and included a patch. =head3 L Tim Bunce noted a failing alarm sequence test in F 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. =head3 L chromatic got Valgrind working on his Linux PPC box and wanted to know if the reports would be useful. Leopold Toetsch welcomed the information. =head3 L Leopold Toetsch created a ticket L<[perl #38627]|https://rt.perl.org/rt3/Ticket/Display.html?id=38627> with the todo item 'fill the function body of C' in F. Karl Forner asked for more details about the request, and Leopold offered information. =head3 L David Dyck replied to L<[perl #37906]|https://rt.perl.org/rt3/Ticket/Display.html?id=37906>, 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. =head3 L 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. =head3 L 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. =head3 L 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. =head3 L Francois Perrad noted a segmentation fault in F. =head3 L In r11801, Leopold Toetsch introduced a change in the call argument bits which required all PASM code using function calls to also be modified. =head3 L 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. =head3 L Joshua Isom wrote several patches. One was a patch to F and F, 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. =head3 L Will Coleda reported in L<[perl #38691]|https://rt.perl.org/rt3/Ticket/Display.html?id=38691> that a slightly modified snapshot of punie caused an error. He included details of the problem. =head3 L James Cloos reported that when upgrading from Parrot 0.4.0 to 0.4.2 there was a failure with C. =head3 L Leopold Toetsch announced that r11852 made some modifications to HLL-mapped .Sub PMCs. =head3 L According to Douglas Hunter, C contained an 'over 4' without a 'back', which made Pod::Simple fail. He included a patch. =head3 L Leopold Toetsch reviewed some opcodes in F 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. =head3 L Audrey Tang questioned the decision to remove MAYBE_FLAT in r11754 without a warning. Chip Salzenberg apologized and instead created a L to address the issue. =head3 L In ticket L<[perl #38724]|https://rt.perl.org/rt3/Ticket/Display.html?id=38724>, Matt Diephouse noted this error. Leopold Toetsch fixed it with revision r11896. =head3 L Leopold Toetsch had some questions for Chip Salzenberg. Other people also replied to the thread. =head3 L 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 I<::> in pdd21. =head3 L Will Coleda created a todo request in L<[perl #38733]|https://rt.perl.org/rt3/Ticket/Display.html?id=38733> for a UTF-8 filter. =head3 L Chip Salzenberg responded to Leopold Toetsch's document with comments. One of his questions concerned the rationale behind the parrot:: namespace, which Leopold explained. =head3 L<.None PMC now returns empty string instead of "None" for get_string|http://groups.google.com/group/perl.perl6.internals/browse_frm/thread/94131db4c3c3a48b/b6b25f69ccc766f9#b6b25f69ccc766f9> Jerry Gay made a modification to the .None PMC in r11911. =head3 L Patrick R. Michaud had a question concerning combining :slurpy and :optional as an optimization. =head3 L This was done. =head3 L 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. =head3 L Leopold Toetsch created a todo ticket L<[perl #38756]|https://rt.perl.org/rt3/Ticket/Display.html?id=38756> for replacing old globals with real interpreter variables. =head3 L In L<[perl #38757]|https://rt.perl.org/rt3/Ticket/Display.html?id=38757>, Leopold Toetsch reported a bug, which Joshua Isom elaborated on. =head3 L Allison Randal made some modifications, and Nick Clark commented on it. =head3 L Pankaj Kaushal reported a bug in parrot-0.4.2 and included the result of gmake tests in ticket L<[perl #38764]|https://rt.perl.org/rt3/Ticket/Display.html?id=38764>. =head3 L Will Codela created a todo ticket (L<[perl #38761]|https://rt.perl.org/rt3/Ticket/Display.html?id=38761>) and chromatic submitted a patch. =head3 L 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. =head3 L Will Coleda created ticket L<[perl #38775]|https://rt.perl.org/rt3/Ticket/Display.html?id=38775> to report this error. =head3 L Will Coleda reported a problem with r11684 in ticket L<[perl #38597]|https://rt.perl.org/rt3/Ticket/Display.html?id=38597>. 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. =head3 L In L<[perl #34549]|https://rt.perl.org/rt3/Ticket/Display.html?id=34549>, Steve Peters noted a test failure in F on OpenBSD. Patches were submitted for a number of systems. =head3 L Ryan Hinton reported a number of failing tests in ticket L<[perl #38788]|https://rt.perl.org/rt3/Ticket/Display.html?id=38788> =head3 L Will Coleda added a patch to promote UTF-8 encoded grammar rules. =head3 L Will Coleda created a todo request (L<[perl #38794]|https://rt.perl.org/rt3/Ticket/Display.html?id=38794>) for better error reporting. =head3 L Andy Dougherty supplied a patch (L<[perl #38784]|https://rt.perl.org/rt3/Ticket/Display.html?id=38784>) to prevent Parrot from reading possibly unallocated memory. =head3 L Will Coleda added a todo item as ticket L<[perl #38796]|https://rt.perl.org/rt3/Ticket/Display.html?id=38796>. =head3 L Will Coleda created a todo ticket (L<[perl #38797]|https://rt.perl.org/rt3/Ticket/Display.html?id=38797>) showing the problem. =head3 L Leopold Toetsch would like an C hook and felt that none of the current 14 C opcodes provided the required functionality. There were several suggestions. =head3 L Leopold Toetsch introduced a change to use C instead of C for properties. =head3 L Sean Sieger reported being unable to get Parrot to run on Ubuntu 5.10. This led to a lengthy discussion of the problem. =head3 L 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. =head3 L Bernhard Schmalhofer reported a bug with L<[perl #38760]|https://rt.perl.org/rt3/Ticket/Display.html?id=38760>. chromatic supplied a patch. =head3 L Jurosz Michal submitted a patch (L<[perl #38810]|https://rt.perl.org/rt3/Ticket/Display.html?id=38810>) to bypass a Win32 MinGW infinite loop for "tree alarm test". The second version was applied as r12077. =head3 L Leopold Toetsch reported a bug in L<[perl #38823]|https://rt.perl.org/rt3/Ticket/Display.html?id=38823>. =head2 Language (perl6-language) =head3 L 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. =head3 L Joshua Choi asked for some clarification of the difference between C ( Int $min, Int $max ) { ... }> and C ( Int $min, Int $max ) { ... }>. Larry Wall and others clarified that there is a difference. =head3 L 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. =head3 L Brad Bowman asked for more information about splicing. Audrey Tang and Larry Wall replied. =head3 L 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. =head3 L Ruud H.G. van Tol suggested a lexical scope for comments. This led to a discussion of POD syntax. =head3 L 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. =head3 L Conrad Schneiker pointed out an interesting book he'd seen at the library and requested that someone write a Perl version at some point. =head3 L 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. =head3 L 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. =head3 L Gabor Szabo had a proposal for some alterations to C. There was discussion on his suggestions. =head2 Acknowledgments If you appreciate Perl, consider L 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, kudra@domaintje.com. =head2 See also =over 4 =item * L =item * L =item * L =back