This week on the Perl 6 mailing lists
"> Errrr ... I'm the one who needs the tutorial, not the one to write it.
"That makes you a prime person to capture the questions it needs to answer! You can't evade the Responsibility Ponies that easily."
-- chromatic, responding to James E Keenan in 'What Skills Do We Need to Finish Parrot?'
Language
[svn:perl6-synopsis] r13570 - doc/trunk/design/syn
A commit by Larry Wall changed categories to allow multiple dispatch via the longest-token rule.
[svn:perl6-synopsis] r13575 - doc/trunk/design/syn
A commit by Larry Wall added Q//
as a quoting form and removed qn//
.
[svn:perl6-synopsis] r13577 - doc/trunk/design/syn
This commit by Larry Wall affected S04, S05, S06 and S12. It unified proto processing to implicitly allow re-declarations within a scope. It works on most declarators, including regex, token, rule and variables.
Multiple my
declarations now issue a warning, which may be
suppressed with a proto
declaration of the variable. The multi
keyword is optional in a proto
scope, and the unique
keyword
"undoes" an outer proto
.
Larry Wall decided to explain what was driving the recent synopsis changes. For some time, he has been working on a Perl 6 grammar written in Perl 6; a snaphot is available. Audrey Tang noted that Pugs can parse it, but it still needs to be made to run, and run fast.
Parrot Porters
Klaas-Jan Stol submitted a patch with an updated version of pirgrammar.pod
and pirgrammar.html
which contains examples for most constructs. The
documents are still being worked on.
Later, in '[PATCH] update pirgrammar.pod (replaces patch 2/4/2007)', he submitted an updated version.
These triggered some discussion in the thread '[PATCH] Updates for languages/PIR/docs/pirgrammar.pod'.
Q on Calling conventions; parameter order
Klaas-Jan Stol remarked that some Parrot calling conventions are unclear. He made a list of the order in which checks are done, as far as he can tell, and asked if it was correct and if cases were missing.
What Skills Do We Need to Finish Parrot?
Last week, James E Keenan asked what code remains to be written in Parrot. Allison Randal replied that IO, Events, Threads, Compiler tools interface, Object support and Exceptions need the most work. James then asked about resources for learning PIR. chromatic offered suggestions.
This week, Allison Randal replied that to date, she hadn't been able to get
the relevant sections of "Parrot Essentials" released, and proposed
that James create a PIR tutorial. She suggested docs/imcc/syntax.pod
as an introduction. Klaas-Jan Stol mentioned that he'd been working on
languages/PIR/docs/pirgrammar.pod
.
James said that he needed a tutorial, and therefore wasn't suited to
write one. chromatic disagreed, stating that inexperience left James
in the perfect position to know what questions needed to be answered.
Joshua Isom seconded, suggesting that James could start a FAQ by creating
at least the questions. Bernhard Schmalhofer suggested adding questions
to docs/imcc/imcfaq.pod
.
It turned out that Dzema Dmitriy is working on a PIR tutorial to accompany a PIR bundle for Texmate.
[perl #41453] [BUG] Test failure in t/pmc/object-meths.t
In ticket [perl #41453], James Keenan reported a failure with a
text in t/pmc/object-meths.t
. Allison Randal identified it as stemming
from r16783, and thought that o = new 'MyClass', $P0
should call
init_pmc
rather than init
, even if $P0
is null. She asked
Leopold Toetsch if the choice between init
and init_pmc
should be
based upon the content of the argument. Leopold replied that that was
not his intention; there should be just one init :vtable which is called,
according to PDD03 calling conventions.
Allison summarized the situation as a feature request which had been submitted as a failing test. She changed the test to reflect the current situation (r17026) and submitted the feature request in ticket [perl #41528].
Prototype object model for Parrot
Allison Randal worked with Sam Vilain on a prototype object model
written in PIR. She checked it in to compilers/smop
. The next
step is to implement the prototype at the PMC level, and incorporate
much of the functionality of src/objects.c
.
Kevin Te replied that he had just started to port Class::MOP
to
PMCs, and would be glad to help with this port as well.
[perl #41454] [PATCH] add 2 new tests for object method dispatch
Sam Vilain noted, in ticket [perl #41454], that inherited method dispatch was only tested with a simple parent/child class. In his attached patch, there are tests for three classes in a straight line, as well as a 4-class diamond inheritance.
[perl #41455] [NEW] and [PATCH]: tools/build/ops2pm.pl refactored
James Keenan submitted ticket [perl #41455]. It contained several patches, for test files and related libraries. They were added to the trunk as r17061 after passing on Darwin and Win32. Later they were confirmed to also work on Linux.
[perl #41456] [PATCH] add a Super PMC test for addparent-established inheritance trees
In ticket [perl #41456], Sam Vilain submitted a test which checks
that if an inheritance tree is created with addparent
, it performs
just like one made with subclass
.
[PATCH] Updates for languages/PIR/docs/pirgrammar.pod
Klaas-Jan Stol submitted a patch for pirgrammar.pod
and
pirgrammar.html
in '[PATCH] Update pirgrammar.pod'.
chromatic remarked that he did not like keeping HTML in the repository,
and wondered if it could be automatically generated because, unlike
other generated files, it does not require flex
and bison
to
produce it.
Klaas-Jan wondered if pod2html
was available for all platforms where
Perl can run. He thought it could be incorporated in the make
procedure
if that were the case. chromatic replied that it had been core since at
least 5.8.0.
Hakim Cassimally replied to [Aldo Calpini's post]{http://thread.gmane.org/gmane.comp.lang.perl.perl6.internals/10966) and expressed an interest in porting to the Nokia N800.
Jerry Gay replied that he'd love to see Parrot ported to the N800 and suggested a way to start on it.
[PATCH] Updates and fixes for docs/imcc/syntax.pod
Klaas-Jan Stol submitted a number of patches for languages/PIR and
docs/imcc/syntax.pod
:
One patch, '[PATCH] Update pirgrammar.pod', also sparked some discussion.
[perl #40706] [TODO] Tcl - implement [close]
Earlier, Paul Cochrane submitted ticket [perl #40706] where he
noted that languages/tcl/src/builtin/close.pir
is only a stub..
Nuno Carvalho reported that a first implementation had been committed
in r16933. There is still some discussion on how to best implement it
for Tcl.
Users
Gabor Szabo reported a 404 error when attempting to download a Win32 binary of Pugs and Parrot. Audrey Tang suggested a different URL. David Vergin noted that the page Audrey offered linked to a build from November 2006 and asked if there was a newer build available.
"delete" and maybe a problem with gather
Gilbert R. Röhrbein
wanted to reorder an array so that the elements are randomly ordered.
He noted a problem with delete
which he wasn't able to describe, except
for stating that it was linked to gather
. The code was included.
Compiler
dpkg-buildpacke fails due to outdated 10smoke patch
Moritz Lenz reported that the current (r15185) revision of Pugs
fails to compile on Debian when dpkg-buildpackage
is used because
the '10smoke' patch cannot be applied.
Acknowledgements
This summary was prepared using Mail::Summary::Tools, available on CPAN.
If you appreciate Perl, consider contributing to the Perl Foundation 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.
Distribution
This summary can be found in the following places:
See Also