Ann Barcomb
Sun, 26 Nov 2006 10:36:38 -0800
This week on the Perl 6 mailing lists
"...of course [that] can't be a bug as there are no specs ;)"
-- Leopold Toetsch, in '[perl #40968] [BUG] :multi doesn't seem to
work right <http://xrl.us/tgtk>'
Language
Smart Matching clarification <http://xrl.us/tc7n>
Last week, Jonathan Lang brought up some information relating to
hashes and was wondering if the matching operator ought to be modified
since the concept for hash keys has since changed. Larry Wall replied
that `===` was correct, but that the decisions on sorting may need to
be rethought. Jonathan thought that not only was the current
description suboptimal, it might not even be possible. Darren Duncan
added in his opinion that .keys should return a Set. Jonathan had some
concerns about the idea. Meanwhile, Paul Seamons made another
suggestion based upon Template Toolkit's handling of the concept.
This week, Darren went in to more detail on the methods which ought to
be available for Set, Seq and Bag. TSa also added comments on the
relationship between Seq, Bag and Set.
Closures, compile time, pad protos <http://xrl.us/tgsp>
Yuval Kogman initiated a thread on scoping and closures with some code
examples. Anatoly Vorobey tried to further clarify the question. They
were not clear on how inner lexically scoped subroutines view their
enclosing environments. There was some question on how compile-time
pads are linked at runtime. Juerd's had a question which led Yuval to
further define the original question.
Buddha Buck added some comments based upon an understanding of other
languages; Anatoly joined in the discussion.
Synopsis 26 <http://xrl.us/tgsq>
Damian Conway attached S26 and thanked everyone who offered feedback
on the first draft. He also stated that the Pod-to-XTML module and
Perl 5 implementation of the POD parser will be available soon.
implementation for subset types <http://xrl.us/tgss>
TSa wanted to propose an addition to the subset type definitions,
namely an implementation body like classes and roles. A rectangle
example from an earlier thread was included. Jonathan Lang replied
with an alternate code example.
Parrot Porters
RFC: Proposal for dynamic binding <http://xrl.us/tc8i>
Bob Rogers responded to Leopold Toetsch's earlier request for an
analysis of the impact of using STM for dynamic binding with a
detailed comparison.
set_pmc + setref/deref: anyone using them? <http://xrl.us/tc8n>
Earlier, Matt Diephouse wanted to know if anyone would be upset if he
removed the `set_pmc` vtable and the `setref` and `deref` opcodes.
Allison Randal thought it sounded like a bad idea to simply remove
opcodes because they were broken. She wanted to know what problem they
were intended to solve, and what the replacement strategy for is.
This week, Matt explained what he knew about the history of the
opcode. Allison agreed with him that `set_pmc` needs to be split from
`assign_pmc` and that they may need to be renamed. She asked for a
more complete proposal for creating the new reference pmc so that the
effects can be carefully considered.
[perl #40884] [CAGE] update parrothist.pod from email archives
<http://xrl.us/tc8u>
Earlier, Paul Cochrane took a stab at ticket [perl #40884]
<http://xrl.us/tc8v>, which was Chip Salzenberg's request for Parrot
release names to be recorded. Will Coleda completed the task and gave
a brief overview of the history of the naming schemes.
pmc2c.pl: Proposed Strategy for Revisions and Testing
<http://xrl.us/tc9f>
Last week, following his introduction to Parrot at the Chicago
Hackathon, James E Keenan posted a proposal on how `pmc2c.pl` could be
tested. He hoped for some feedback at an early point to prevent him
from wasting effort on useless patches.
He proposed extracting as much functionality as possible in to
subroutines which are then placed in a package. He also wondered about
some options which were described in the documentation but didn't
appear to be used.
This week, James clarified that `gen_def()` is indeed not used.
Jonathan Worthington took responsibility for this, and said that he
thought it was unneeded. James stated his intention to deprecate it.
Allison Randal advised James to begin with an extensive and tested
refactor, with Particle's help.
[perl #40945] [PATCH] languages/abc test suit, basic tests
<http://xrl.us/tgst>
Nuno Carvalho created ticket [perl #40945] <http://xrl.us/tgsw> to add
more features for testing the abc language.
[perl #40946] [PATCH] languages/abc TODO file <http://xrl.us/tgsx>
In ticket [perl #40946] <http://xrl.us/tgsy>, Nuno Carvalho included a
patch which is a TODO file for the abc language tests. This is a list
of missing tests for features.
[perl #40951] [tcl] namespace "lost" inside an if statement.
<http://xrl.us/tgsz>
In ticket [perl #40951] <http://xrl.us/tgs2>, Will Coleda included
some example code demonstrating how a Tcl namespace is lost inside of
an if statement.
[perl #40947] [PATCH] languages/abc test suit, function tests
<http://xrl.us/tgs3>
Nuno Carvalho created ticket [perl #40947] <http://xrl.us/tgs4> to
submit a patch to add some simple abc functions to the abc test suite.
It was applied as r15714.
[perl #40953] [PATCH] languages/abc test harness, correct todo option
<http://xrl.us/tgs5>
In ticket [perl #40953] <http://xrl.us/tgs6>, Nuno Carvalho included a
patch to correct the abc test harness's todo option. It was applied.
Re: [perl #40955] [BUG] :anon .subs aren't anchored to a namespace
<http://xrl.us/tgs7>
Matt Diephouse created ticket [perl #40955] <http://xrl.us/tgs8>. In
it, he explained the relationship between namespaces and subroutines.
Namespaces contain subroutines, and subroutines are anchored to
namespaces. Matt wrote that anonymous subroutines should not be in a
namespace, but should still be anchored to one; in Parrot this is not
the case. He included a test case to demonstrate the problem.
Although the issue was resolved in r15674, this ticket generated some
discussion. Allison Randal replied that she thought anonymous
subroutines should not be anchored to a namespace. She thought that
what Matt had in mind was a new concept, and asked for code examples
and use cases which would allow her to define the concept better.
Matt responded with a Perl 5 example, and Allison replied. She
proposed starting a new thread, which Matt did with ':anon Subs and
Namespaces <http://xrl.us/tgs9>'. Ben Morrow also replied to the
original ticket-based thread.
[perl #40958] [BUG] - can't iterate subclass of ResizablePMCArray
<http://xrl.us/tgta>
Patrick R. Michaud reported a problem with using iterators on
subclasses of `ResizeablePMCArray`. This was ticket [perl #40958]
<http://xrl.us/tgtb>.
[perl #40950] [PATCH] Compiling Parrot with the new Borland C++
<http://xrl.us/tgtc>
Steve Peters created ticket [perl #40950] <http://xrl.us/tgtd> which
contains a patch to get Parrot to compile with the new Borland C++. He
noted that more patches would probably follow.
[perl #40959] Parrot compile fails on OpenBSD/ppc in src/asmfun.s
<http://xrl.us/tgte>
In ticket [perl #40959] <http://xrl.us/tgtf>, Steve Peters reported a
compilation failure and included the error messages. chromatic thought
the error looked familiar and proposed a solution.
[perl #40960] [BUG] :multi namespace pollution <http://xrl.us/tgtg>
In ticket [perl #40960] <http://xrl.us/tgth>, Matt Diephouse reported
that making a :multi sub affects the namespace by adding an extra
entry for the :multi variant.
Some thoughts on Microsoft Visual C++ 8.0 <http://xrl.us/tgti>
Ron Blaschke posted a summary of Microsoft's Visual C++ compilers and
their take on bundled code. Steve Hay replied that he spent a while
working on the same issues for Perl 5. Ron replied with a link to a
page he had found on building C/C++ isolated applications and
side-by-side assemblies.
3 subroutines with same name <http://xrl.us/tgtj>
James E Keenan included some snippets from three different files where
a subroutine with the same name, `gen_c`, is used. All of these are in
places where he plans to refactor. chromatic suggested whichever one
is currently used should be considered authoritative. He thought it
would be nice to compare the output of all three to see if there are
significant differences between them.
:anon Subs and Namespaces <http://xrl.us/tgs9>
This thread continues from 'Re: [perl #40955] [BUG] :anon .subs aren't
anchored to a namespace <http://xrl.us/tgs7>'.
Matt Diephouse tried to explain the anonymous subroutine namespace
issue he is experiencing from the perspective of what Tcl needs. He
posted some examples of the Tcl PIR. Allison Randal replied that it
seemed like the same problem as Perl 5's 'main' routine. She also
tried to explain why having anonymous subroutines anchored to a
namespace would cause problems in Parrot. She suggested a feature
which allows a post-compilation modification of the namespace a
compilation unit uses for default lookups.
[perl #40968] [BUG] :multi doesn't seem to work right
<http://xrl.us/tgtk>
Patrick R. Michaud filed ticket [perl #40968] <http://xrl.us/tgtm> to
report a problem with underscore arguments in ':multi'. Leopold
Toetsch replied with some thoughts on how they ought to work, but felt
that it wasn't exactly a bug. Patrick gave some more detailed examples
of why the current semantics are not useful. chromatic answered that
he did not see any reason not to make the primitive types and their
related PMCs equivalent in the distance value function.
[perl #40966] [BUG] Parrot core dumps in perl6 (possible GC/pointer
bug?) <http://xrl.us/tgtn>
In ticket [perl #40966] <http://xrl.us/tgto>, Patrick R. Michaud
reported a possible GC or pointer bug.
[perl #40972] Iterator over Env under Win32 <http://xrl.us/tgtp>
Bernhard Schmalhofer noticed an iterator test which was being skipped
under Win32 and wondered if it still needed to be skipped. His post
was recorded as ticket [perl #40972] <http://xrl.us/tgtq>.
pmc2c.pl --dump : What Files Does Makefile Supply as @ARGV
<http://xrl.us/tgtr>
James E Keenan had a question about how the Parrot Makefile uses
`pmc2c.pl`. Specifically, he wanted to know what files the Makefile
places in @ARGV. chromatic replied that he did not see anything except
the .pmc files.
[perl #40646] [TODO] PGE - add tests for <alpha+[_]>, <alpha-[Jj]>, etc.
<http://xrl.us/szoj>
Patrick R. Michaud created ticket [perl #40646] <http://xrl.us/szvs>
to request some new tests. He recently added code to add combined
enumerated classes to PGE. Nuno Carvalho added some tests to the
`rx_subrule` but noted that two were unexpectedly failing. Patrick
noted why the tests were failing and corrected them.
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/>