Summary updates
This post continues to work on the Perl 6 summary backlog. After the upcoming August 20th recapitulation of the first three weeks of August, Perl 6 summaries will return to a weekly schedule.
Users
RFF: test Emacs Perl6 mode
Steffen Schwigon invited anyone who uses (X)Emacs to work with Perl6 or Pugs to give feedback on the enhanced cperl-mode at http://svn.openfoundry.org/pugs/util/cperl-mode.el
[ANNOUNCE] Pugs 6.2.12 and v6.pm released! (reformatted)
Audrey Tang wrote that Pugs 6.2.12 is available on CPAN, and listed some of the key features. v6.pm, a prototype Perl 6 compiler implemented in Perl 5 is also available on CPAN. She highlighted a number of modules which had contributed toward the solution, such as Moose and Module::Compile.
Your ideas/preferences for Perl 6 IDE, RCP, Acme-like shell, and so on?
Conrad Schneiker had several questions for the group: what key features should be in a FOSS tool suite involving Perl 6, what major existing components are recommended, and how people would design it to take advantage of new Perl 6 capabilities.
wiki
Amir E. Aharoni wanted to know what the current state of the wiki plan is. He was primarily interested in the content, rather than the implementation. Conrad Schneiker replied that he felt a wiki should be installed on feather soon, to serve the need for documentation, and from there it would be possible to port the wiki to Perl 6.
Language
[svn:perl6-synopsis] r9725 - doc/trunk/design/syn
In response to Audrey Tang's commit, Aaron Crane noted that he understood why 'environmental' had been changed to 'contextual' but questioned whether 'contextual' was the best alternative because 'contexts' already have a meaning. He proposed 'ambient variables'. Audrey responded that a context is passed along with your calls, and in that sense 'want' is a contextual variable.
[svn:perl6-synopsis] r9727 - doc/trunk/design/syn
Markus Laire had a question about Larry Wall's commit, namely, why
q:n[stuff]
is not acceptable, and in what way parenthesis are
special. Larry replied that qn(stuff)
is always a function call,
as is q(foo)
; neither is a quote. He said that he will clarify
the distinction between quotes and macros.
[svn:perl6-synopsis] r9733 - doc/trunk/design/syn
In response to Larry Wall's commit, Markus Laire asked how
q ()
is parsed, because quotes can have whitespace but functions
cannot. Larry replied that it is a quote.
S04
Tom Allison was looking at S04 and was confused by the intended behaviors
and prohibited behaviors of the goto
function and suggested clarifying
with test cases. Audrey Tang agreed that test cases would be useful
and invited Tom to contribute.
DOC: glossary
Uri Guttman reported on the docathon. There was a suggestion that Perl 6 have a glossary with terms might not make sense to a newcomer not steeped in theory. Uri proposed that someone be appointed pumpking of the master documentation. Juerd suggested checking out the Perl 6 Nomenclature document. José Castro amended Uri's proposal to suggest that pronunciation always be included, for the benefit of non-native speakers. Joel York volunteered to be pumpking.
Using Rules Today
Joshua Gatcomb posted that he is working on different parsers and their methods. He wondered if someone could provide an example of a mathematical expression parser. Flavio S. Glock posted links of some possibilities. Paul Seamons suggested that CGI::Ex::Template might be of interest.
sprintf and snake envy
Brad Bowman wrote about two sprintf features of Python which might be
nice to borrow. Nicholas Clark was not certain that sprintf needs
an operator. Larry Wall noted that there was already sort of an
operator, if infix as
is considered a variant of .as()
.
S29 proposed revision
Aaron Sherman included a first attempt of a revision of S29. He wanted to make it public although there is still a lot more to do.
namespaces, a single colon to separate HLL prefix?
Allison Randal is reviewing namespaces in PDD and would like to know if there is a syntax specified in Perl 6 for referring to namespaces from other languages. Audrey Tang replied that the ':' form is approved, and that this is found in S11. Larry Wall and Aaron Sherman also had some comments.
sprintf for S29
Aaron Sherman has worked on documenting sprintf in S29 and asked if there were additional formats that should be added.
List operations for S29
Aaron Sherman has gone through the basic list operations in S29. One of the disappointments is that splice cannot be as fully featured as desired. He included the text modifications.
Methods vs. Subs
Jonathan Lang asked if there was anything which was possible with a sub but not a method. Larry Wall replied.
S29 update ready
Aaron Sherman posted that he was ready to update S29 but asked Larry Wall and others to look over the documents. Joe Gottman had a comment about join, and Darren Duncan added his opinion. Aaron clarified.
[svn:perl6-synopsis] r10077 - doc/trunk/design/syn
In response to a commit, Smylers replied that it might not make sense for comments to start with an alternate form of expressions now denoted as illegal. Aaron Sherman asked for further clarification on exactly what expressions were covered by the patch. Larry Wall responded.
Anonymous Self-referential Datastructure Literals
Brad Bowman posted a few thoughts about self-referential structures and their literal implementations for debugging and serializing. He wondered if a YAML approach would be a good representation.
Containers
Aaron Sherman had some questions about containers--which are mentioned in S02 and S06--and wanted to mention them in S29. Jordan Kanter saw this as an argument for the Glossary Uri Guttman mentioned in DOC: glossary. Aaron and Trey Harris had a long conversation about what containers offer.
S?? OS interaction, POSIX and S29
Aaron Sherman had some questions concerning changes he wanted to make to S29 on the subject of POSIX.
Yuval Kogman asked for a more partitioned approach.
Easy Str === Str question: what is a reference type
Aaron Sherman had a problem with S03 with ===
and Str.
David Green tried to clarify how Str is 'special'.
This post led, indirectly, to the next thread, and eventually to Run time dispatch on ~~.
===, =:=, ~~, eq and == revisited (blame ajs!)
Following a question posed in Easy Str === Str question: what is a reference type and a discussion on #perl6, Yuval Kogman posted several points that are not completely resolved. He included a list of what he expects operators to return, and what they currently return in Pugs. This led to a very long discussion, which also forked into Run time dispatch on ~~.
The conclusion was that ===
did not do what most people expected,
and that the eqv
operator exists for that purpose. Synopsis patches
to clear up the explanations were applied.
Another quick one: .as<ancestor>
Aaron Sherman wanted to know if derived classes can automatically
$obj.as<ancestor>
. Larry Wall explained the situation. Aaron
had confused compile-time polymorphism with run-time mutation.
S29 demerge and API document plan
Aaron Sherman reported that Audrey Tang had asked him to split up S29 because it is becoming large. He explained how he proposed to make the division.
Run time dispatch on ~~
In response to a request by Yuval Kogman, Aaron Sherman tried to re-state his concerns from an earlier thread (Easy Str === Str question: what is a reference type). In the end, Aaron proposed dealing with the problem through documentation. There was also some discussion on proper syntax.
optimizing with === immutable comparator
Darren Duncan suggested that there might be an implementation optimization
in ===
. Chromatic wondered if it was worth adding share-on-compare as
a side-effect to a simple comparison. Darren tried to clarify his point.
Ruud felt that it should be a voluntary operation. In Yuval Kogman's
opinion, it is a VM issue.
[svn:perl6-synopsis] r10215 - doc/trunk/design/syn
Darren Duncan replied to a commit with a couple of suggestions:
eliminating !~
in favor of !~~
, and explicitly stating the <=>
semantics.
A note for test writers
Leopold Toetsch requested that people verify test results rather than using Parrot output as the expected output. In short, tests should be written first, then features.
binding operators and related introspection
Darren Duncan noted that S03 and the newest Pugs are agreed on how
:=
works. He wondered if there could also be an easy way to change
all bindings to the same variable to point to a different variable.
Sam Vilain suggested this might be similar to Ruby's Object.all
.
Hyperoperators and the Each role
Christopher Jeris had a few questions about hyperoperators applying
recursively to any object which matches the Each
role, as seen in
S03. Darren Duncan and Larry Wall responded.
just laugh your heart out
Dr. Ruud posted a joke about the origins of C++ for those who would describe Perl 6's relationship to Perl 5 as C++'s to C.
Patch for S02
Agent Zhang posted a patch to S02, which was applied as r10314. Several other document patches resulted:
Another patch for S02 was another S02 patch by Agent Zhang, which was applied
Patch for S03 contained Agent Zhang's patch for S03, which Audrey Tang applied
Gaal Yahas was inspired to send a patch for S04 in [patch] S04: CATCH blocks
Agent Zhang had a patch with typo corrections for S04: [patch] typos in S04
S04 - forbidden coding-style
Markus Laire noted a conflict between the way the Perl 6 grammar is defined, and the GNU coding standard for constructs like:
loop
{}
while ( ... );
Since this requires backtracking to disambiguate between while as a statement modifier and while as it's own loop.
Many ideas were brought up, and the only real solution is to use a backslash escape for the newline, at the end of the line with the closing brace.
Parrot Porters
The parrot-porters list was called perl6-internals during the period covered by this summary.
[perl #38594] [BUG] source line numbers
In February, Leopold Toetsch noted in ticket [perl #38594] that source line information is off by at least one on several instructions in PASM/PIR. Vishal Soni started to look in to the bug in June, and in July the patch was applied.
A question about .begin_eh
Bob Rogers requested some clarification of a portion of pdd23_exceptions.pod
from late May, dealing with .begin_eh
. He wondered if this meant that
the current process of searching for an Exception_Handler object on the
control stack would be replaced with a search through sub metadata when
an error is thrown, and asked about how it would interact with pushaction
.
Chip Salzenberg agreed that Bob's interpretation of the plan was
correct and noted that no resolution had been reached with pushaction
.
A discussion on the merits of different ways of handling it ensued.
Namespaces Redux
Matt Diephouse ran in to problems implementing namespace support in Tcl and had a few questions. Chip Salzenberg replied, and in the end it was determined that some of Matt's requests were already met, and that one should be a bug report.
[BUG] parrot 0.4.5: Configure.pl: tru64
Jarkko Hietaniemi reported a problem with Parrot with tgetnum
and asked if there was a way to add verbosity to show what commands
are being run. Leopold Toetsch advised perl Configure.pl
--verbose-step=snprintf
, and Jarkko included a more detailed report.
Jarkko resolved to get the admins to compile a newer libreadline
after some discussion with Leopold. Will Coleda felt the test for
readline should be improved. There were some discussions on how
to do this.
pdd23: closure vs. continuation
Chip Salzenberg asked for permission to revise PDD23 to use the closure model rather than the continuation model for handlers. Allison Randal agreed with the change.
[perl #39671] [PATCH]#38469: [BUG] -O1 branch optimization
In ticket [perl #39671], Vishal Soni created a patch for tail recursion, which Chromatic applied as r13084.
[perl #39674] There's no way to specify the root HLL namespace
Matt Diephouse created ticket [perl #39674] because there is no way to specify that you want the root HLL namespace.
test of get_namespace opcode vs. arrays
Matt Diephouse provided tests for array based keys and the get_namespace
opcode. This sparked a long discussion relating to namespace root addressing.
Welcome to parrot-porters
Chip Salzenberg announced that the perl6-internals mailing list was renamed to parrot-porters in order to introduce it to a wider audience. He liked the name 'p-p' as an abbreviation for the list although he wasn't willing to actually stand by that statement.
Java's Scripting Framework information
Steve Peters posted links related to Java's upcoming support for 'scripting' languages in JSP. This subject came up in Chip Salzenberg's YAPC talk.
Onward & Upward: New Assignments
Chip Salzenberg announced that Allison Randal will take over as architect of Parrot, while Chip will become pumpking. Meanwhile, Leopold Toetsch will stay and continue working on Parrot internals. Everyone is satisfied with their new positions.
pdd21 vs. find_global
Chip Salzenberg thinks that with get_namespace
and the untyped
namespace interface, find_global
is obsolete. Allison Randal
felt that find_global
shouldn't accept a namespace PMC as an
argument. Chip agreed with this. Patrick R. Michaud also believed
that find_global
was a bit overloaded. Allison further defined
what was required.
[perl #39683] [PATCH] #38627: [TODO] fill Parrot_register_move() with code
In ticket [perl #39683], Vishal Soni provided a patch to implement the register content preserving move operation.
[perl #39685] [CAGE] warning: no previous prototype
In ticket [perl #39685], Will Coleda reported a task for the cage cleaners, namely some warnings he sees during a build on OS X. Fixes were applied as r13258.
Last modified date on Parrot Documentation
There was a request for the documents at http://www.parrotcode.org/docs to include a last modification date.
Portable dirfd() (was Re: [perl #39261] stat() doesn't work on dirhandles)
Steve Peters had made some changes to Perl 5 which prompted Chromatic to
ask if Parrot's File PMC could use some similar capabilities. Steve
added a portable dirfd()
implementation to his configuration task
list.
[perl #39696] perl6 makefile should relocate
Will Coleda created ticket [perl #39696] to suggest that the Perl 6
makefile should be moved to languages/perl6/config/root.in
.
[perl #39697] [TODO] Tcl - use the standard library code
In ticket [perl #39697], Matt Diephouse suggested that Tcl procedures written in Tcl should be part of the standard library in ParTcl instead of implementing them as builtins.
[perl #39698] [TODO] Tcl - Convert [expr] to use PGE/TGE
Matt Diephouse created ticket [perl #39698] to ask if [expr] could be modified to use PGE/TGE.
perlbug (and parrotbug) upgrade
Robert Spier reported that the RT system has been upgraded to 3.6.
[perl #39704] [TODO] Tcl - Convert TODO/XXX comments to RT tickets
Matt Diephouse created ticket [perl #39704] to suggest that instances of 'XXX' in the code be replaced with RT tickets.
[perl #39706] [TODO] IMCC Change the type of register number from unsigned char to unsigned int or unsigned long
Vishal Soni created ticket [perl #39706] because Parrot requires support for an unbounded number of registers but they are now limited to 256.
[svn:parrot-pdd] r13151 - in trunk: . docs/pdds
Allison Randal edited trunk/docs/pdds/pdd23_exceptions.pod in the parrot repository concerning exception handling. Bob Rogers and Allison then discussed the separation of exceptions into their own stack.
[perl #39712] [TODO] Tcl - handle default args in [proc]
Matt Diephouse created ticket [perl #39712] reported that Tcl treats everything as an argument name, contrary to the proc man page description.
[perl #39714] [TODO] Refactor IMCC to remove static globals
In ticket [perl #39714], Audrey Tang wrote that re-entrancy should be possible for IMCC, which would require some refactoring.
[perl #39715] [TODO] IMCC errors should throw Parrot exceptions
In ticket [perl #39715], Audrey Tang noted that IMCC should throw
an exception using the standard Parrot exception mechanism.
Vishal Soni supplied a patch, which eventually became r13307.
There was further discussion on the return value from Parrot_compile_file
and APIs to be added in the future.
[perl #39716] [TODO] Document IMCC's :immediate feature
Audrey Tang noted in ticket [perl #39716] that the semantics of the IMCC operating in .pir to .pmc mode which runs arbitrary Parrot code in the PBC emitter should be documented.
[perl #39717] [TODO] Tcl - Add tests for [uplevel] + [info level]
Matt Diephouse created ticket [perl #39717] to discuss Tcl's uplevel requirements.
[perl #39718] [TODO] Tcl - Add tests for untested, implemented commands
Matt Diephouse created ticket [perl #39718] to list commands which are implemented but lack tests.
[perl #39719] [TODO] Tcl - Design a template syntax for subcommands
Matt Diephouse created a TODO item for Tcl, regarding the inability to inline subcommands with templates due to lack of syntax for dealing with them, or so it appears.
Fwd: Call for Parrot Janitors
Jerry Gay reposted Andy Lester's call for Parrot Janitors.
Andy invited discussion on parrot/cage/todo.pod
.
Cage Cleaning for dummies? Re: Call for Parrot Janitors
Bill Ricker requested a detailed document of how to set up and build a smoke environment for those who are inexperienced with the project. Chromatic shared his experiences, and Nicholas Clark disagreed with Chromatic's recommended GCC version. There was a brief discussion of highly desired test systems.
[perl #39732] [TODO] Tcl - Add namespace support for variables
Matt Diephouse created ticket [perl #39732] because variables
like $foo::bar
don't take advantage of the new namespace support.
Tests are also needed.
[perl #39734] t/doc/pod.t fails on Mac OS 10.4.6/perl 5.8.8
David H. Adler reported in ticket [perl #39734] that there were some errors which were causing POD tests to fail. The problem was fixed promptly, before David could even reply to answer Jerry Gay's question on what revision he was using.
[perl #39738] bind fails with errno EADDRNOTAVAIL on darwin and FreeBSD
In ticket [perl #39738], Chris Dolan reported that as of Parrot r13181, binding to a non-privileged port on localhost fails on Mac OS X and FreeBSD, but succeeds on Linux.
[perl #39740] [PATCH] fix debug messages in io_unix bind, listen
With ticket [perl #39740], Chris Dolan supplied a patch to correct confusing STDERR diagnostics.
.namespace [''] in TGE
Chip Salzenberg included a patch for compilers/tge/TGE/Compiler.pir
which he thought was advisable.
PGE and TGE vs. .namespace
Chip Salzenberg included patches to fix PGE and TGE for changes in
.namespace
. The TGE patch worked, but the PGE patch failed.
Allison Randal replied that TGE and PGE both needed attention for
the new namespaces implementation. Chip agreed, but wanted to apply
his patch as a regression fix. Jerry Gay reported failures of tests
due to the .namespace
changes, which Chip's patch would fix.
Allison agreed with applying the patch.
[perl #39742] [BUG] installed parrot conflicts with dev parrot.
Will Coleda reported in [perl #39742] that the development version should not be detecting or interacting with installed versions of Parrot.
[perl #39552] Segfault on FreeBSD during make
Chip Salzenberg replied to ticket [perl #39552], asking if the failure could be reproduced if Parrot wasn't installed anywhere. David Landgren reported that the install worked when he did that.
Re: [perl #39743] [PATCH] change perl6-internals to parrot-porters in docs
Chris Dolan supplied a patch to modify references to perl6-internals to refer to parrot-porters instead.
[perl #39744] accessing exception object should not throw an exception
Chip Salzenberg reported in [perl #39744] that keyed access to exception objects should be forgiving.
[perl #39745] [PATCH] Fixed TODO on t/codingstd/cppcomments.t
John J. Trammell created ticket [perl #39745] to offer a patch to make test use the Parrot::Distribution module instead of mass globbing. Jerry Gay applied a modified version as r13196.
[perl #39746] [NEW] t/codingstd/fixme.t - search for FIXME comments in source
In ticket [perl #39746], John J. Trammell wrote a test to look for 'FIXME', 'TODO' and 'XXX' markers in the code. It was applied as r13195.
[perl #39750] parrot@13183: tru64 core dump: t/examples/japh_12.pasm
In [perl #39750], Jarkko Hietaniemi posted about a core dump. Chip Salzenberg fixed it.
Re: [perl #39751] unbug - parrot@13183: tru64 core dump: t/dynoplibs/myops_4.pir
In [perl #39750], Jarkko Hietaniemi posted about a core dump. Will Coleda replied that this is how the test should behave, and wondered if the test should be skipped or the opcode removed. Chip Salzenberg wrote a haiku about the test, and Jarkko poetically requested that the test harness be informed about Parrot's tendency to obey suicide requests.
[perl #39752] parrot@13183: tru64 core dump: t/op/lexicals_27.pir
Jarkko Hietaniemi had another bug to report in [perl #39752]; Chip Salzenberg replied that it had been fixed.
[perl #39753] parrot@13183: tru64 core dump: t/pmc/io_1.pir
Jarkko Hietaniemi was busy reporting another issue in ticket [perl #39753]. Chip Salzenberg noted that this ticket could not be resolved without a review of the I/O PDD.
[perl #39754] parrot@13183: tru64 core dump: t/pmc/resizablebooleanarray_20.pasm
Jarkko Hietaniemi's issue in [perl #39754] now waits for a rewrite
of ResizeableBooleanArray
.
Re: [perl #39755] parrot@13183: tru64 6 failures: getting NaNQs: t/pmc/complex.t
Jerry Gay moved Jarkko Hietaniemi's report of infinity and NaN stringification from [perl #39755] to the existing [perl #33337]. Jarkko thought that his failure was perhaps a little different from the existing report.
[perl #39756] parrot@13183: tru64 core dump: t/examples/japh_10.pasm
Jarkko Hietaniemi created another bug report, this time in ticket [perl #39756]. This made Chip Salzenberg thing the test harness was ignoring segmentation faults, but Leopold Toetsch explained that it was Test::* TODO.
contrib tool: search for opcodes
João Cruz Morais offered a script which will search for opcodes. Bernhard Schmalhofer added it to the tools directory, and requested a patch to add documentation. He also suggested that new patches be sent via RT. Finally, he added that it would be nice to have a port of the Parrot::Config Perl 5 module for future Python scripts.
João later created ticket [perl #39759] for the tool, also posted as Re: [perl #39759] [NEW] Util tool - search for opcodes.
[perl #39757] [BUG] sprintf left-justification doesn't work
Matt Diephouse created ticket [perl #39757] to report a bug.
Ruby on Parrot
Allison Randal said that she had heard of someone working on a Ruby implementation based on Punie and wondered if this was true. Kevin Tew acknowledged the PRuby project but welcomed a better name for it. Several people proposed 'Cardinal'. Other suggestions were 'Ronie' and 'Ronin'. In addition there was some help given.
[perl #39760] make warnings (r13197 - x86-msvc-7.1)
Jerry Gay created ticket [perl #39760] to report some make warnings. Ron Blaschke sent some patches. Leopold Toetsch made corrections. Ron wondered if the issue could be closed, or if another patch was needed.
Java Script in Parrot
Vishal Soni asked if anyone is implementing a JavaScript/EMCAScript to parrot compiler. Norman Nunley replied that he is working on one based on the self hosting Narcissus project but that it isn't very far along. Since Vishal's implementation will be PGE based (as opposed to self hosting) s/he asked for advice on operator precedence, and unicode input.
[perl #39761] [NEW] t/codingstd/tabs.t - checks for tabbed indents
John J. Trammell created tests to check for tabbed indentation, because the coding style document states that indentation must be in spaces. His test was submitted as ticket [perl #39761].
I'm pre-hackathoning at OSCON, not post-hackathoning
Several people wrote about their OSCON hackathon plans at the end of July.
[perl #39768] [TODO] Tcl - Switch to runtime errors?
Matt Diephouse created ticket [perl #39768]. He felt that the Tcl compiler should either throw compile time syntax errors or fake it and output code that throws runtime errors.
Parrot Exceptions
Vishal Soni wondered if there was an example in Parrot on how to throw a Parrot exception and catch it.
[svn:parrot-pdd] r13214 - in trunk: . docs/pdds
Bob Rogers and Chip Salzenberg had concerns with handled
in r13214.
PDD 23 Exceptions - ready for implementation
Allison Randal marked the Exceptions PDD as ready to implement with a few minor modifications. Bob Rogers had an idea on how to ensure that a handler is not in scope when invoked. Chromatic wondered why there needed to be a stack to keep track of flow control constructs. Allison replied that an exceptions stack is a good first approximation. There was additional discussion.
Building a Fedora package
Steven Pritchard reported that he had been working on building Fedora Extras packages for Parrot and Pugs and had a few issues on x86_64. Joshua Hoblitt asked if perhaps this was x86_64 with multilib support, as the current build system does not support multilib builds.
Attached to the same thread was ticket [perl #39860] where
Joshua Hoblitt requested that Configure.pl should accept --libdir
.
Later he attached a patch.
[perl #39771] [PATCH] missing signature for examples/nci/win32api.pir
Rene Hangstrup Møller created ticket [perl #39771] to report
that the Win32 example in parrot/examples/nci/win32api.pir
fails
and supplied a patch. It was applied as r13221.
[perl #39776] [BUG] PGE core dump
Kevin Tew created ticket [perl #39776] to report a PGE core dump. Patrick R. Michaud identified a possible syntax error. Chip Salzenberg wanted to know what the appropriate response was, a core dump or an exception.
[perl #39777] Large Subroutine Segfaults IMCC
Matt Diephouse reported in [perl #39777] that a large subroutine makes IMCC segfault. Vishal Soni provided a patch to increase the number of .constant decls, but considers the matter unsolved. Matt hoped that a more useful error message could be created, and Vishal agreed to create a patch. There was further discussion on how to best address the root problem.
HLL, perl6
Will Coleda noticed that perl6 isn't using the .HLL directive. He thought perhaps someone would like to switch from .namespace to .HLL. Patrick R. Michaud reported that he tried it in March, but namespaces have improved since then, and he would look in to it soon unless someone else did.
[perl #39778] Segfault when using a Namespace with an Iterator
Matt Diephouse created ticket [perl #39778] because trying to use an Iterator with a NameSpace makes Parrot segfault. Chip Salzenberg, Bob Rogers, Leopold Toetsch and Matt discussed how to fix it.
[perl #39784] Make Parrot's default namespace be untyped
Chip Salzenberg created ticket [perl #39784] to state that Parrot's default namespace implementation should be completely untyped.
[CAGE] Output of CPD on src/
Juan Jose Natera ran CPD as requested in cage/todo.pod
and included
the output. He asked for advice on how to eliminate the code
duplication.
[perl #39788] [PATCH] examples/shootout
In ticket [perl #39788], Michal Jurosz supplied a patch to fix
examples/shootout
errors.
[perl #39791] [TODO] deprecate @MAIN syntax in favor of :main
Jerry Gay created ticket [perl #39791] to request the syntax
style @MAIN
be replaced with :main
. He included an untested
attempt.
[perl #39792] [TODO] Deprecate :immediate in favour of .loadlib and .const
Leopold Toetsch created a TODO item to deprecate :immediate
. The semantics of
:immediate
vs. :init
were discussed, especially with respect to static analysis,
and functional purity of inlined values stemming from :immediate
blocks, and
where they run. Name calling and discussion ensued.
[perl #39685] [CAGE] warning: no previous prototype
Will Coleda noted a few OS X warnings. Ticket [perl #39685] was resolved with r13258.
[TODO] Implement .loadlib pragma in IMCC
Audrey Tang created a TODO item for changing the macro-hack for library loading
with a shorter declarative form. This was completed by Leopold Toetsch. Allison
Randal discussed the correct semantics of the .loadlib
pragma,
The semantics of HLL vs. non HLL libraries was discussed extensively, eventually forking into another thread.
This ticket was reopened by Will Coleda in [perl #39796] [TODO] Implement .loadlib pragma in IMCC , after getting closed.
[CAGE] Coverity and Split: Has anyone started using these with Parrot?
Kevin Tew wondered what had been done with Coverity. Chromatic replied that they will look in to adding Parrot for their next stage of tests.
In a subthread missing from Google's archives Andy Lester provided his opinion on the current status of the code base, and Coverity alternatives.
[perl #39799] [PATCH] pmclass brace indentation
Willie created ticket [perl #39799] to supply a patch which fixes the indentation of pmclass.
[perl #39801] [PATCH] adding examples\shootout\spectralnorm.pir
In ticket [perl #39801], Michal Jurosz supplied a patch to implement spectralnorm shootout benchmark.
[perl #39802] [PATCH] [CAGE] turning up the warnings levels in gcc as much as we can
Kevin Tew provided a patch in ticket [perl #39802]. This patch increases warning levels in GCC.
Re: [svn:parrot] r13270 - trunk/languages/perl6
Allison Randal responded to a commit by noting that it might be possible to eliminate a runtime call to the loadlib opcode. Audrey Tang made the change.
"_group" in library name (was Re: r13272 - in trunk: compilers/imcc docs/imcc src)
Chip Salzenberg wanted to change a patch to use an adverb
loadlib 'perl6_group' :hll
. He is planning to standardize on lower
case for PIR directives, but .HLL
will continue to work for a long
time. The matter was already resolved by the time Audrey Tang got
a chance to look at it.
[perl #39807] [BUG] load_bytecode of .pir files fails (sometimes)
Patrick R . Michaud created ticket [perl #39807]. This ticket reports
a bug when load_bytecode
is used in a PIR file it causes problems with
the IMCC compiler later.
[perl #39808] [PATCH] Allows execution of a single configure step such as rebuilding language makefiles
Kevin Tew submitted a patch as ticket [perl #39808].
[perl #39809] PGE crash on parrot;PGE::Exp::Quant;reduce
In ticket [perl #39809], Chris Dolan reported that a simple token
containing :i
causes PGE to crash. Patrick R. Michaud was not sure
if it was a problem, because S05 suggests one thing, but recent use
has suggested another. He thought that a ruling from p6l or @Larry
was needed. Chris agreed. Chris also offered to write a number of
syntactically incorrect regular expressions if someone were to create
a stub test for syntax errors. He supplied them in r13280.
PL/Parrot
David Fetter was hoping for some suggestions on how to implement a PL/Parrot for PostgreSQL. Gerald Butler wondered if it would be sensible to implement the interface as a set of Parrot PMCs, or if the SPI could be wrapped in Perl. David replied that this was exactly the sort of question he wanted help with.
Re: [perl #39823] [CAGE] tools/dev/run_indent.pl -- this should be a test
Jerry Gay created ticket [perl #39823] to suggest that there should be a test to see if the source code follows the standards of PDD07.
Later he responded to Swaroop, stating that Parrot::Config
is generated
by perl Configure.pl
.
[perl #39824] [CAGE] tools/dev/check_source_standards.pl -- this should be a test
Jerry Gay created ticket [perl #39824] to request a test checking that the source code follows the standards of PDD07. He quoted the appropriate part of the text.
Re: [perl #39826] [CAGE] convert C<perl -w> to C<use warnings;>
In [perl #39826], Jerry Gay reported that many scripts contain
perl -w
, but the minimum Perl version is 5.6.2, so these should
mostly become use warnings;
. Swaroop supplied a patch, which
was applied as r13505.
[perl #39827] [TODO] implement is_abs_path()
Will Coleda reported the need for a C-level routine to determine if a given path is an absolute path. Ticket [perl #39827] was created to track this.
[perl #39829] [PATCH] accept() always fails
Kay-Uwe Huell noted that there is a failure with the accept()
op.
A patch was included in ticket [perl #39829] to fix this.
Leopold Toetsch could not replicate the error, nor could Chris Dolan,
who asked for more details of the failure. Later Leopold reported
a fix in r13332.
[perl #39831] TGE - Needs more diagnostics on failure.
Will Coleda felt that a slightly more informative error message would be useful. He suggested using PGE::Util::die. This was described in ticket [perl #39831].
[perl #39833] [TODO] Tcl - Make [rename] handle namespaces
In ticket [perl #39833], Matt Diephouse noted that namespace support
was added to Tcl, but rename
doesn't support it yet.
suggestions for new pdd21
Patrick R. Michaud noted that Allison Randal had just updated PDD21 and offered a few changes in the text. Allison agreed with some of the changes and applied them. She asked if the named parameter passing techniques work on low-level PMCs defined in C. Leopold Toetsch replied that this is not yet the case.
[perl #39838] [PCC] mark non-returning functions with __attribute__((__noreturn__))
Chip Salzenberg created ticket [perl #39838]. In it he noted that some compilers have flags to mark functions which don't return, but all functions which don't return should be marked in this manner. Andy Lester said it would be done.
[perl #39842] [PATCH] Win32 PLATFORMS update (r13309)
Ron Blaschke included a patch in ticket [perl #39842]. The fix was to update PLATFORMS with information on failing tests. It was applied as r13316.
[perl #39843] [TODO] Tcl - Make todo tests show up as failures in dev environment
Tcl has some failing tests skipped and others simply failing when they should all be marked as TODO. Matt Diephouse started ticket [perl #39843] to address this problem.
[perl #39844] [BUG] Parrot doesn't do args checking for a sub without params
In ticket [perl #39844], Matt Diephouse showed some code he expected to fail with "too many args" but which printed "ok".
[perl #39845] [TODO] Better IMCC Errors: unexpected IDENTIFIER
Matt Diephouse wrote that IMCC throws an error when it encounters an unexpected identifier but doesn't specify what the identifier was. The issue is tracked as [perl #39845].
[perl #39846] [PATCH] Use only non-interpolated quotes for substituted values in dynpmc.pl
Ron Blaschke opened ticket [perl #39846] to note a problem with interpolated quotes and included a patch.
[perl #39849] [PATCH] pmc2c: Wrap MMD initializer code in block
Ron Blaschke created ticket [perl #39849] to supply a patch to make
languages/lua
compile on Win32. It became r13329.
[perl #39850] [TODO] [CAGE] lack Parrot::Config confusing....
Will Coleda wanted Cage Cleaners to make some changes which would reduce the number of questions asked about Parrot::Config::Generated. This was ticket [perl #39850], and it was resolved with r13647.
[perl #39851] [BUG] .HLL doesn't reset the .namespace
Matt Diephouse wrote in ticket [perl #39851] that Parrot should
assume .namespace
when it sees .HLL '...', '...'
.
[perl #39852] [TODO] Tcl - Create the ::tcl namespace properly
Matt Diephouse made a temporary hack to create the ::tcl
namespace.
It should be replaced with code which actually populates the namespace.
See ticket [perl #39852] for more details.
IMCC Reentarancy
Vishal Soni raised issues with IMCC's reentrancy, due to the code that flex
emits. Audrey Tang and Sam Phillips suggested using alternative tools. Audrey subsequently fixed the flex related issues. Allison Randal further clarified on the long and short term goals of the IMCC compiler project, and the relevant plans for a 1.0 release.
[perl #39853] [BUG] Tcl - pwd returns path with backslashes on Win32
Ron Blaschke created ticket [perl #39853] to note a failure
due to Tcl's pwd
returning a path containing backslashes. Will
Coleda suggested a change in the OS PMC. Ron added his thoughts.
[perl #39854] [PATCH] adds preamble section to tge grammar to allow for includes and global defines
Kevin Tew created ticket [perl #39854] to send a patch which adds a preamble to the TGE grammar. Allison Randal thought the idea was important but needed refinement. She offered some background information.
Namespace.get_namespace() vs. optional params
In response to changes in PDD21, Chip Salzenberg felt the need to point out that currently, methods written in C cannot have optional arguments. Allison was aware of the problem and thought that the differences between low-level PMCs and Parrot objects defined in PIR code need to be minimized. Chip added a TODO ticket.
[perl #39855] configuration: define MIN/MAX macros for all integral typedefs
Chip Salzenberg created ticket [perl #39855] to state that
all integral typedefs should have min/max macros. He wanted
MAX_INTVAL
to go with INTVAL
and UINTVAL
.
[perl #39856] TODO: Produce Single PBC from Multiple PIR Files with -o
In ticket [perl #39856], Chromatic requested that Parrot be able
to produce a single PBC file from a command like parrot -o all_files.pbc
file1.pir file2.pir ...
. Joshua Hoblitt thought it would be a good
idea to define how symbol conflicts should be handled. Leopold
Toetsch believed that pbc_merge
can handle this, but Allison Randall
explained that it doesn't quite address the request. Chip Salzenberg
felt that was a bug, although Allison preferred to call it a feature.
Jerry Gay clarified how it worked by citing documentation and including
tests.
[perl #39857] [PATCH] Made httpd.pir RFC compliant (at least about CRLF)
Kay-Uwe Huell created ticket [perl #39857] for a patch to make
examples/io/httpd.pir
RFC compliant. It was applied in r13353.
[perl #39858] [PATCH] more elegant hex_to_int in examples/io/httpd.pir
Kay-Uwe Huell supplied a patch with a more elegant function for
hex_to_int
in [perl #39858].
Source cleanup ideas (pending STM merge)
Chip Salzenberg posted about some ideas he had in mind for source code cleanups. Andy Lester added Chip's suggestions to the Cage Cleaners' todo list.
Re: [svn:parrot] r13343 - trunk/compilers/imcc
Allison Randal requested that Audrey Tang roll back r13343 because the solution was not maintainable. Audrey complied, and requested an explanation on why it was not maintainable. Joshua Hoblitt and Allison discussed the problem.
Checkin #13345
Chromatic noted that revision 13345 caused command line parsing problems to be misreported. Audrey Tang asked if a separate change fixed this, and raised issues with segmentation faults. Eventually Matt Diephouse supplied a patch to improve reporting in a way that pleased everyone.
get_root_namespace opcode vs. interpinfo {cage cleaners?}
Chip Salzenberg asked if interpinfo .INTERP_ROOT_NAMESPACE
could
be removed, as get_root_namespace
is available. Allison Randal
agreed with the proposal.
flex/bison version for Parrot?
Chip Salzenberg wondered which versions of flex and bison will work. Audrey Tang replied: "Flex 2.5.33, Bison 2.2."
[perl #39864] [BUG] Compiling P6Regex within code substitutes part of string to match away
Kay-Uwe Huell created ticket [perl #39864] to supply a patch. Leopold Toetsch noted that it looked like a GC bug, but it was actually a COW string bug, fixed in r13400.
[perl #39867] Configure.perl --maintainer should check flex/bison versions
Chip Salzenberg requested in that Configure.perl
check if the user
has an outdated version of bison or flex. This was in ticket
[perl #39867]. Joshua Hoblitt marked the problem as fixed.
another item for the cage list: INTVAL_MAX etc.
Chip Salzenberg asked Andy Lester to add ticket [perl #39855] to the Cage Cleaners' list. Will Coleda advised putting '[CAGE]' in the ticket name.
[perl #39868] [CAGE] convert C<BEGIN { plan tests => NN; }> to C<use Parrot::Test tests => NN;>
In ticket [perl #39868], Jerry Gay noted that references to
BEGIN { plan tests => NN; }
should be converted to
use Parrot::Tests tests => NN;
. Will Coleda clarified that
if the number of tests is not known until runtime, they should
not be modified.
[perl #39877] [BUG] [CAGE] Distro tests incomplete
Writing in ticket [perl #39877], Will Coleda reported test failures in r13383 and r13385.
[perl #39878] [CAGE] generated files with timezoneless times
Will Coleda wanted to see any tools which insert time messages include the timezone. He wrote about this in ticket [perl #39878].
[perl #39879] [CAGE] t/distro/file_metadata.t failing
Will Coleda noted around 500 test failures related to SVN properties in ticket [perl #39879].
Parrot::Embed 0.01
Chromatic reported that Parrot::Embed has been bundled in to releasable form: http://wgz.org/chromatic/perl/Parrot-Embed.tar.gz. He wanted to include it in the Parrot repository but was not sure how to best do this.
[perl #39892] [BUG] Bus error in t/pmc/eval.t#19
In ticket [perl #39892], Will Coleda reported bus errors with a test.
[perl #39897] [PATCH] TGE - add basic syntax error
Will Coleda provided a patch to update TGE to use PGE::Util::die. It was posted in ticket [perl #39897].
NCI and libparrot Question
Chromatic included some code he thought should work and asked if it
would work. Leopold Toetsch disagreed, and listed several reasons why
it would fail. Chromatic asked where in the NCI PDD some of this
was documented. Leopold offered a pointer to src/call_list.txt
.
Problems Installing Parrot
Shawn H. Corey reported that he was having problems installing Parrot following the README instructions and asked for help. Jonathan Rockway offered suggestions.
This led to Chris Dolan noting that he thought ICU was recommended but not required, but that he could not find documentation on the subject.
Later, Shawn also posted some replies he'd received from Andy Lester, for inclusion in a FAQ. Patrick R. Michaud advised against installing Parrot because of the potential for collisions between installed and local Parrot copies.
Further help was given in Help Understanding Configure.pl Output.
Re: [svn:parrot] r13424 - trunk/docs/art
Will Coleda wanted to discuss revision r13424 on the list.
[perl #39905] [TODO] TGE - line number reporting.
Ticket [perl #39905] was created by Will Coleda. Errors in an embedded PIR should be reported against the original .tg file rather than the generated PIR file. Patrick R. Michaud asked how this could be addressed, and Will included documentation.
Additions to docs/glossary.pod
Shawn H. Corey reported some terms which are not included in the glossary. Andy Lester added the patch, which became r13433.
[perl #39908] [BUG] IMCC treats $S as a non-register instead of throwing an error
Matt Diephouse created ticket [perl #39908]. He noted a situation where an error should be thrown but wasn't.
t/compilers/pge/p6regex/01-regex.t test 118 needs ICU?
Bob Rogers reported Parrot test failures when ICU is not used. Patrick R. Michaud applied Bob's patch as r13457.
[perl #39913] [BUG] TGE - Can't use } in the transform definitions.
Will Coleda noted in ticket [perl #39913] that the TGE grammar
doesn't understand embedded }
s.
[perl #39914] [PATCH] Fix Path Quoting in file.t Test
Ron Blaschke noted that slashes were causing problems on Win32. He supplied a patch in ticket [perl #39914].
Flex Debugging
Vishal Soni asked for help in flex debugging syntax. Leopold Toetsch supplied the answer.
PDD review, onward and upward
Allison Randal finished reading through all PDDs and now plans to go through them to update and expand them with open discussions. PDD17 is first on the list, and the order of the list can be influenced by request. Joshua Hoblitt asked to se PDD25 reviewed. Jerry Gay noted that there are RT tickets which organize the review and discussion of each PDD.
Parrot users: 'make realclean'
Chip Salzenberg suggested that people make realclean
and rebuild
for the next update, and noted that people should read commit logs.
PDD17
Will Coleda wrote a list of issues regarding basic types.
[perl #39921] [CAGE] generated by tools/dev/mk_manifest_and_skip.pl
In ticket [perl #39921], Will Coleda noted that the MANIFEST from r13493 was being reordered due to the fact that it was being generated by File::Find. r13649 fixed this problem.
[perl #39924] Can't build parrot
Pratik Roy asked, in ticket [perl #39924], what the requirements
were for building Parrot. Jerry Gay noted that Perl 5.6.1 or greater
is a requirement, and changed Configure.pl
to give appropriate error
messages in r13523.
Shebang; testing
Will Coleda is considering making a test harness in Tcl for Tcl, but was not sure how he could reliably run the tests from inside a sandbox at arbitrary directory levels.
[perl #39925] [BUG] IMCC - bus error
Will Coleda created ticket [perl #39925] to report a problem with building Tcl in r13510.
[perl #39928] [PATCH] [Win32] Remove Quotes for lazy-k calc.t on Windows
Ron Blaschke submitted a patch as [perl #39928] to fix a problem with single quotes being passed on literally on Windows.
[perl #39930] [BUG] concat unicode+iso-8859-1 doesn't work w/o ICU
In ticket [perl #39930], Patrick R. Michaud noted that concatenation of a Unicode string with an ISO-8859-1 string fails if ICU isn't available, while other Unicode concatenations just work.
[perl #39931] [TODO] integrate svn and rt
Jerry Gay felt that SVN commits with a marker denoting the ticket number should automatically update the RT ticket, and created ticket [perl #39931] to suggest this. Will Coleda asked a bit about how RT would respond to different situations.
[perl #39932] [TODO] enable bulk operations in rt
Jerry Gay wrote [perl #39932] to request that bulk operations be possible for some RT admins to create new tickets from a file.
[perl #39933] [BUG] compreg-related bus error
Will Coleda wrote in [perl #39933] that he encountered a bus error when trying to create a test for something else. Leopold Toetsch thought it was a syntax error and consolidated it with ticket [perl #39892].
[perl #39934] [PATCH] Make disassemble useful.
Kevin Tew created ticket [perl #39934] to request feedback on a patch.
[perl #39939] [TODO] exhaustively test new {set,get}*global and get*namespace opcodes
In [perl #39939], Chip Salzenberg reported that the new PDD21 opcodes need complete tests.
new {get,set}*global opcodes from pdd21 are available
Chip Salzenberg announced that the global variable opcodes as listed
in PDD21 are now {get,set}_global
, {get,set}_hll_global
and
{get,set}_root_global
. The old {fetch,store}_global
will soon
be deprecated.
[CAGE] Request for header file renaming
Luca Regini wondered if it might be possible to rename
../include/parrot/string.h
to something like
../include/parrot/parrot_string.h
because string.h
collides with
a file of the name in the standard C library, causing issues with
SPLINT
. Jerry Gay and Andy Lester thought the change would be
fine so long as Parrot compiles and passes tests afterwards.
[perl #39979] [TODO] Tcl - More tests for [expr]
Matt Diephouse created ticket [perl #39979]. In it he noted that unary operators with string operands and % tests with floats still need tests.
[perl #38887] Result of INFINITY or NAN stringification is platform dependent
Ron Blaschke added some functions, Parrot_math_isnan
and
Parrot_math_finite
and asked if there was a good way to test
if the platform supplies IEEE recommended functions like _finite
and _isnan
and use them if they are available. Bill Coffman
replied that there is no platform independent way to produce
Nan or Inf, but offered some optimization tips.
NaN and infinity were also discussed in Inf and NaN.
[svn:parrot-pdd] r13593 - in trunk: . docs/pdds/clip
Bob Rogers responded to Allison Randal's commit to suggest that introspection capability is always a good idea.
Partial fix to make closures invoke actions
Bob Rogers included a patch he was not sure he should apply. The patch
defined Parrot_rewind_stack
as a stub, changed Continuation:invoke
to
use the stub, and modified tests. Problems with the patch are that it
doesn't invoke the actions in the right dynamic environment, and it
is linear in the current stack depth instead of linear in the number of
entries that must be traversed. He asked if the patch should be applied,
postponed, or replaced with a more comprehensive fix.
[config] New Configure.pl option --m=32
Leopold Toetsch reported that r13597 enables compiling 32-bit
executables with JIT on his AMD X2 box running x86_64-linux with
perl Configure.pl -m=32
and a few configuration adjustments..
Re: [perl #39986] Create Default PackFile for New Interpreter (Parrot C API)
Chromatic created ticket [perl #39986] to report that there is
no default PackFile for the situation where he has created a new
interpreter with Parrot_new()
and wants to compile and run code
through Parrot_compile_string()
without having to read and load
bytecode from disk.
It was reported that this was fixed in r13613, but Chromatic had further questions. There was further discussion between Chromatic, Leopold Toetsch and Chip Salzenberg. Chip requested some cleaning on namespace pollution, and Andy Lester replied that it is on his list.
[perl #39987] [PATCH] patched editor text-highlighting for vim
In [perl #39987], Kay-Uwe Huell noted that a few words were incorrectly
highlighted in vim, and provided a patch for editors/pir.vim.in
. It
was applied as r13704.
[perl #39990] External API and C Strings
Chromatic wrote that where possible, the external API should take an
receive C strings and created ticket [perl #39990] for the purpose
of tracking this change. Leopold Toetsch replied that the distinct
STRING
* or Parrot_STRING
type doesn't make much sense and he had
proposals for changing this.
[perl #39992] [TODO] t/op/01-parse_ops.t: figure out how to test parsing of pmc constant parameters
Jerry Gay reported in [perl #39992] that r13601 checks the parsing of every Parrot opcode except for those which accept PMC constants. The remaining opcodes require tests.
"Parrot: Evolution v2" presentation
Chip Salzenberg supplied the link to the most recent version of "Parrot: Evolution", which he delivered at OSCON 2006.
[perl #39995] [PATCH] Minor patch for config/gen/makefiles/editor.in failing copying files
Kay-Uwe Huell created ticket [perl #39995] to report a failure
with make vim-install
in a Cygwin environment. A patch was supplied
to deal with whitespace in directory names.
[perl #39997] [PATCH] PGE P5 Test Cleanup
David Romano submitted a patch to clean up the regex tests taken from Perl 5. Jerry Gay raised the an issue with the data file being shared with Perl 5, after which David supplied an additional patch, moving todo/skip information to an outside file. Jerry applied.
PGE/TGE and the future.
Kevin Tew wanted information about TGE design goals and plans. Allison Randal replied that the plan is to have a single set of OST node classes used by all languages, a task Vishal Soni is currently at work on. She included a link to the first draft of the compiler tools plan, which Patrick R. Michaud is at work on updating so that it can be converted to a PDD.
[perl #40002] TGE Refactor / Compiler Tools Object
Kevin Tew created ticket [perl #40002] to ask a number of questions about the TGE refactor and cited several other tickets. There were some replies in August. Patrick R. Michaud replied with information about the plans for TGE. Allison Randal and Patrick R. Michaud contributed summaries of a conversation they had at OSCON. Jerry Gay also commented.
Onward & Upward: More New Assignments
Allison Randal announced that Patrick R. Michaud will be taking primary responsibility for the development and maintenance of TGE. Allison will continue working with Patrick on the architecture of TGE and the rest of the compiler tool suite.
[perl #40010] [TODO] Add a mutex to eval_nr in compilers/imcc/parser_util.c
In ticket [perl #40010], Matt Diephouse noted that a change in r13628 is not thread safe and needs to be modified.
[PATCH] Add a String IO Layer.
Chromatic supplied a patch to add a stringy IO layer and fix some typos. Leopold Toetsch thought it looked good and agreed with Chromatic's assessment that there were indeed some matters for cage cleaners in the IO layer.
Parrot::Config...
Will Coleda supplied information on how to fix a problem with the
svn checkout related to a recent patch in Parrot::Config
.
resizablepmcarray, assign.
Will Coleda included some code which was not working in Tcl. He thought the error originated in the Parrot code base, and asked some questions. Bob Rogers had difficulty replicating the problem; Chromatic suggested using a newer Test::Harness because prove is not included in the older version. Leopold Toetsch felt this was in conflict with the Parrot README prerequisites list.
Will said that the problem was fixed in r13696. He also reported that Tcl's test suite is being converted from using Perl to being self-hosting in Tcl. Bob reported some additional problems in r13715. Will noted that Tcl was undergoing a lot of changes this week. There was some further discussion with Matt Diephouse on the Tcl changes.
Inf and NaN
Matt Diephouse proposed implementing three types of core PMCs: NaN,
Inf and NegInf. Jerry Gay reminded Matt about negative-not-a-number,
and there was some discussion about whether -NaN exists, which led to
the question of whether the fact that NaN != NaN
unless there is
optimization in the comparison could be used in isnan and finite tests.
There was also discussion on infinity and NaN in thread [perl #38887] Result of INFINITY or NAN stringification is platform dependent
[svn ci] r13703: Start fixing the exit_handler mess - API change
Leopold Toetsch reported that r13703 makes some incompatible API
changes. It replaces the global exit_handler_list
with an
interpreter field, and changes Parrot_on_exit
, Parrot_exit
and
other exit_handlers to officially take an Interp* argument.
[perl #40030] [PATCH] compiler/imcc missing dependency
In [perl #40030], Fonseka reported some missing dependencies which were preventing compilation and provided a patch. In the end it turned out to be a problem with an old Parrot installation.
Compiler
[ANNOUNCE] Pugs 6.2.12 and v6.pm released!
This message was cross-posted to perl6-users; please look at [ANNOUNCE] Pugs 6.2.12 and v6.pm released! (reformatted).
a smarter form of whitespace
Allison Randal asked if it was a bug or a feature that no matter
which whitespace rule matches, if :sigspace
is on, newlines are
treated as ignorable whitespace. Patrick R. Michaud found a reference
in S12 which defines the search order for rules.
Vanilla Perl, Win32, and Data::Bind support.
Audrey Tang responded to a #perl6 request to build a Data::Bind binary distribution for Win32-ActivePerl by building it on VanillaPerl build 3.
Perl 6 compiler docs released - graffle questions, compiler questions
George Wood and Audrey Tang released new versions of documents and wondered if there was a way to automate the export of the JPG and HTML files that set up the image maps. George also had further questions for Audrey, which she answered.
v6.pm now runs Test.pm!
Audrey Tang reported that the CPAN version of v6.pm now passes all Pugs sanity tests. She is especially pleased with the independent layers, which allow people to use modules like Class::MOP and Data::Bind without switching to the v6 interface.
making v6 test suite its own distro
Darren Duncan suggested further decoupling implementations from the Perl 6 specifications by distributing the Perl 6 test suite as its own distribution, so that v6.pm does not require Pugs just to test it. Gaal Yahas mentioned some of his concerns, and pointed out the Chimps project, which is trying to do something similar. There was also some discussion on whether requiring support for features in Test.pm should be a requirement for an implementation. Jerry Gay also joined the discussion.
Acknowlegements
Yuval Kogman once again contributed summaries for some of the threads.
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, [email protected].
Comments
You can follow this conversation by subscribing to the comment feed for this post.