Weekly Perl 6 mailing list summary for 17-23 December, 2006

[email protected] (Ann Barcomb) Mon, 25 Dec 2006 19:54:21 +0100 (CET)
Newsgroups perl.perl6.announce
Message-ID <[email protected]>
  This week on the Perl 6 mailing lists

     "Short answer: absolutely.

     "Long answer: emphatically not."

     -- Larry Wall, in 'RAII in Perl6/Parrot <http://xrl.us/tz2r>'


  Language

   supertyping <http://xrl.us/twvd>

     Earlier, TSa asked about supertyping, specifically if supertyping will
     exist in Perl 6. Larry Wall wanted to see some more complicated use
     cases which would demonstrate that the concept was useful rather than
     simply an aspect of type theory. Several other people contributed to
     the thread.

     This week, Jonathan Lang addressed TSa's other question of what would
     happen if an object's type changed while its identity was preserved.
     Tsa replied to the subthread.

   RAII in Perl6/Parrot <http://xrl.us/tz2r>

     Blair Sutton asked if Perl 6 would be able to do RAII. He cited some
     articles which expressed the view that it was not possible in Python
     due to the fact that garbage collection does not offer deterministic
     finalization. This led to the question of whether Perl 6 would suffer
     from the same problem due to Parrot's style of garbage collection.

     Larry Wall replied that deterministic reference counting was only one
     way to provide transactional security and timely destruction. He
     assured Blair that Perl 6 has ways to let you not care about some
     dependencies, while paying attention to others.

     Blair appreciated Larry's explanation, and admitted to relying on the
     deterministic nature of C++, and using RAII to manage locks between
     threads and tear apart sockets cleanly. He asked for an example of
     Perl 6 offering the capability to execute code once every reference to
     an object has been removed. Luke Palmer replied that the `LEAVE`
     closure trait was a general method for addressing this.

  Parrot Porters

   [perl #33962] readline returns one too many lines <http://xrl.us/tz2x>

     Allison Randal reviewed ticket [perl #33962] <http://xrl.us/tz48>,
     which was created almost a year ago by Matt Diephouse to report that
     the readline opcode returns too many lines. She decided to leave the
     ticket open and link it to the I/O PDD ticket.

   Re: [perl #34994] [TODO] make useful parts of Parrot config available at
   runtime <http://xrl.us/tz2y>

     Leopold Toetsch responded to ticket [perl #34994]
     <http://xrl.us/tz49>, which was created in April. He noted that there
     had been several attempts to solve the issue, and the only working
     scheme was to link with an object file which had the path inside. He
     left it as 'todo'.

   [perl #39997] [PATCH] PGE P5 Test Cleanup <http://xrl.us/tz2z>

     Patrick R. Michaud and Paul Cochrane looked at ticket [perl #39997]
     <http://xrl.us/tz5a>, which was written in July. Patrick felt that it
     was safe to close the ticket, because all 'skip' and 'todo' markers
     had been factored out of the regex test files. Paul resolved the
     ticket.

   Re: [perl #40361] [PATCH] #40278 [CAGE] perl coding standards coda.
   (cont.) <http://xrl.us/tz22>

     Ticket [perl #40361] <http://xrl.us/tz5b> from September was revived
     and elicited a great deal of discussion between Paul Cochrane, Chris
     Dolan, Bob Rogers, Allison Randal, Lee Duhem, Patrick R. Michaud,
     chromatic, and Nicholas Clark.

     It started with Paul suggesting that the ticket could be closed once a
     decision was made on where formatting information for emacs and vim
     should be located. Chris mentioned a limitation with the verbose form
     of the Emacs settings. Bob elaborated, offering a patch as a
     work-around.

     Allison suggested removing all emacs and vim settings from the source
     code files. She felt that having the tests check for correct
     formatting addressed the issue without the maintenance costs of editor
     tips. Patrick and chromatic agreed with her suggestion.

     Paul thought that editor hints reduce the amount of cage cleaning work
     by ensuring that code contributions use the correct style. Nicholas
     Clark pointed out that the alternative, top-level editor settings,
     assumes that all a developer's projects use the same coding standard.

     After further discussion on options, Allison proposed that for the
     time being, hints would be left out of Perl files with `__END__` or
     `__DATA__` blocks. A future task would be for someone to figure out a
     way to encourage good habits, without cluttering the source code or
     assuming that everyone uses emacs or vim. Paul updated the
     Perl::Critic policy accordingly, and made a note in PDD07.

   [perl #40950] [PATCH] Compiling Parrot with the new Borland C++
   <http://xrl.us/tz23>

     Steve Peters added a reminder to ticket [perl #40950]
     <http://xrl.us/tgtd> that a patch still needs to be applied for
     compiling Parrot with Borland C++.

   [perl #41064] Not-so-new 'make' failures on Darwin <http://xrl.us/twve>

     James Keenan was happy to report in ticket [perl #41064]
     <http://xrl.us/twvf> that further suggestions from Will Coleda fixed
     his problem.

   Side effect between exit & .HLL <http://xrl.us/twvh>

     Last week, François Perrad showed some example code where an error of
     'no exception handler' was seen when a .HLL directive was added before
     a simple subroutine. This week he supplied a patch to address the
     issue.

   [perl #41095] [BUG] Segfault in test.exe during Configuration
   <http://xrl.us/tz24>

     In ticket [perl #41095] <http://xrl.us/tz5c>, Nikolay Ananiev reported
     a segmentation fault on Win32. Jonathan Worthington thanked him for
     the report, and stated that other solutions were being looked at.

   [perl #40802] Investigate Supposed JIT Bug with if/unless Optimization
   <http://xrl.us/tz25>

     Jonathan Worthington responded to Matt Diephouse's ticket [perl
     #40802] <http://xrl.us/tz5d>. He replied that the bug had been fixed,
     so he removed the comment from the code.

   [perl #40816] open opcode creates file if it doesn't exist
   <http://xrl.us/tz27>

     Jonathan Worthington responded to open ticket [perl #40816]
     <http://xrl.us/tc7v> to clarify that he did not think that it was a
     bug for '+<' to be the default mode. Jerry Gay felt that it was a bug,
     unless it was explicitly documented that 'open' would create a file as
     default.

   [perl #40801] [TODO] Rename enter_nci_method to something better
   <http://xrl.us/tz28>

     Matt Diephouse created ticket [perl #40801] <http://xrl.us/tz5e> to
     request a new name for `enter_nci_method`. Kevin Tew suggested
     `register_nci_method`.

   [perl #41099] [PATCH] root.in Makefile and CREDITS <http://xrl.us/tz29>

     Eric B. Lubow created ticket [perl #41099] <http://xrl.us/tz5f> to
     include a patch to the makefile. Paul Cochrane noted that there were
     two patches and asked which one should be applied. Eric clarified, and
     Paul applied the patch as r16183.

   [perl #41102] [PATCH] On Win32 with Visual C++, nmake was not
   automatically selected if mingw was also found on the system
   <http://xrl.us/tz3a>

     David Woldrich reported a problem with the Parrot configuration script
     and included a patch, which was applied as r16129. Ticket [perl
     #41102] <http://xrl.us/tz5g> tracked the bug.

   [perl #41103] [BUG] stdin.'readline'() segfaults on systems w/o readline
   support <http://xrl.us/tz3b>

     In ticket [perl #41103] <http://xrl.us/tz5h>, Patrick R. Michaud
     reported a segmentation fault.

   [perl #41104] [PATCH] Building on MinGW is disrupted by the presence of
   /bin/sh.exe on the PATH, docs explain required environment change
   <http://xrl.us/tz3c>

     David Woldrich's ticket [perl #41104] <http://xrl.us/tz5i> contained a
     patch which was applied as r16187.

   [perl #41105] [PATCH] Silence a warning on Cygwin <http://xrl.us/tz3e>

     Steve Peters created a patch to eliminate some warnings on Cygwin. It
     was applied as r16177 and can be viewed as ticket [perl #41105]
     <http://xrl.us/tz5j>.

   Generated .pm files in MANIFEST <http://xrl.us/tz3g>

     Paul Cochrane wanted to know why some files, which are auto-generated,
     are mentioned in `MANIFEST` instead of `MANIFEST.generated`. He
     planned to move them if there were no objections.

   [perl #31652] [TODO] Win32 - Microsoft Visual C++ Toolkit 2003
   <http://xrl.us/tz3j>

     In ticket [perl #31652] <http://xrl.us/tz5k>, chromatic asked if the
     toolkit was still required, now that ICU is available. Jonathan
     Worthington replied that the toolkit was one of the easiest ways to
     get a C compiler for Windows, and therefore it was still useful to
     have it documented. Ron Blaschke commented that he thought it was
     going to be discontinued.

     Jonathan Worthington requested a patch for `readme.win32.pod`, which
     Ron agreed to write.

   [perl #41110] [PATCH] tru64: compile (src/nci.c) and runtime
   (src/memory.c) <http://xrl.us/tz3m>

     Jarkko Hietaniemi created ticket [perl #41110] <http://xrl.us/tz5m> to
     provide patches, which were applied as r16208.

   [perl #39802] [PATCH] [CAGE] turning up the warnings levels in gcc as
   much as we can <http://xrl.us/tz3n>

     Some time ago, Kevin Tew created ticket [perl #39802]
     <http://xrl.us/tz5n> to offer a patch to increase warning levels in
     gcc. Paul Cochrane applied a modified version of the patch but asked
     what version of gcc some of the flags belonged to, as they did not
     work with his gcc. Kevin replied.

   Re: [perl #39742] [BUG] installed parrot conflicts with dev parrot.
   <http://xrl.us/tz3o>

     A while ago, Will Coleda reported in ticket [perl #39742]
     <http://xrl.us/tz5o> that there was a conflict between an installed
     version of Parrot and a development version.

     Recently, Leopold Toetsch reported that it seemed like a BSD linker
     issue, because he couldn't verify the problem on Linux. David Landgren
     was able to verify that the problem is not resolved.

   More Undef vs. Null... <http://xrl.us/tz3p>

     Will Coleda wanted to know if Hash and Array keys are meant to have
     different results when keys are unset. Leopold's opinion was that the
     `.Undefs` returned by Arrays are a legacy, and that `.Null` is
     correct.

     Jonathan Worthington submitted a patch which changes the PMC to use
     `.Null`. However, he did not want to apply it until there was a design
     decision, and until he'd had a chance to fix some of the code which
     expected to receive `.Undef`.

     Patrick R. Michaud added that there are several places where `.Undef`
     was expected. He had no strong feelings about one design over another,
     but wanted people to be aware of the impact the change would have.

     Jerry Gay felt that it would take a coordinated effort and suggested a
     dedicated day for the change, with community involvement.

     Allison Randall gave the decision in favor of consistent use of null.
     She requested that someone add a note about the change in
     `DEPRECATED.pod`.

   [perl #40253] [PATCH] [CAGE] always cast printf("%p") to (void *)
   <http://xrl.us/tz3q>

     Ticket [perl #40253] <http://xrl.us/rjmv> received an update from Paul
     Cochrane, who asked if the patch should still be applied. Will Coleda
     was satisfied with whatever portions of the patch Paul had been able
     to apply. This was done as r16211.

   Assertions and MMD (on Windows XP) <http://xrl.us/tz3r>

     Ron Blaschke had some problems with compiling Parrot on Win XP with
     Visual C++ when assertions were enabled. He wanted to know if anyone
     else had this problem, and why the assertion checks if the lowest two
     bits of a function pointer are zero. chromatic explained that those
     two bits will be zero if the pointer is raw. Leopold Toetsch added
     that it was a hack, and the solution was to replace the table with an
     MMD cache representation.

   Janitor Tasks <http://xrl.us/tz3s>

     chromatic reported that he was creating the next Perl.com newsletter
     and needed a list of Cage Cleaner tasks suitable for someone with Perl
     and C skills, but very little free time?

   Bind to an Unspecified Port <http://xrl.us/tz3t>

     Matt Diephouse is writing a PIR socket library. He found that if he
     uses '0' as the desired port, the OS will select a port, but that
     Parrot offers no way to discover what the port was. He included a
     patch which fixed this for UNIX, and requested help with the Windows
     version.

  Users

   Unwanted scalar references <http://xrl.us/tz3u>

     Ovid thanked the mailing list for answering some of his earlier
     questions. His latest question was how to dereference an unexpected
     scalar reference.

   hello, does anybody who knows the svn respo of synopsis docs?
   <http://xrl.us/tz3v>

     Fayland Lam asked for the location of the synopsis repository. Audrey
     Tang replied with the repository URL <http://xrl.us/tz5p>.

   Junctions as arguments (Pugs bug) <http://xrl.us/tz3x>

     Ovid included a code snippet where he was casting a junction as a
     string and received unexpected results. He wanted to know what the
     proper response was, in order to write a test.

     Jonathan Rockway was not sure what output could be expected from
     say-ing a junction. He saw two possibilities, and thought that Ovid's
     expectation was better, but wanted to hear other opinions before tests
     were added.

     Larry Wall answered that what Ovid described was standard
     autothreading behavior, as described in S09.

  Compiler

   take: bug or feature? <http://xrl.us/tz3y>

     Ovid posted some code which was failing with the latest Pugs and asked
     if there was a problem with the code or Pugs. Sean O'Rourke also
     thought it was a bug. Ovid later confirmed that it was a bug and it
     was being worked on.

  Acknowlegements

     This summary was prepared using Mail::Summary::Tools
     <http://xrl.us/qvno>, available on CPAN.

     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]>.

  Distribution

     This summary can be found in the following places:

     * use.perl.org <http://use.perl.org/>
     * The Pugs blog <http://pugs.blogs.com/>
     * The perl6-announce mailing list <http://xrl.us/qycj>
     * ONLamp <http://www.oreillynet.com/onlamp/blog/>

  See Also

     * Perl Foundation activities <http://blog.perlfoundation.org>
     * Perl 6 Development <http://dev.perl.org/perl6>
     * Planet Perl Six <http://planetsix.perlfoundation.org/>