Perl 6 summary for the month of July, 2006 (part 1/2)

kudra on 2006-08-13T18:43:31

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:

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.