Perl 6 Summary: 2006-03

grinder on 2006-07-17T05:58:00

Summary updates

Perl 6 Summary (March 2006)

It was pointed out that I was unclear about URLs. I will be using long (original) URLs for web editions and short URLs for mail editions.

Compiler (perl6-compiler)

make error on 9188

Beau E. Cox reported a failure with Pugs r9188, which failed to make smoke and make install. A patch was submitted.

Fwd: The "lrep" thing

Flavio S. Glock posted some information from #perl6 on the phases of Perl 6 development. This included a request to coordinate development efforts.

XML parsing in P6

Premshree Pillai asked about XML parsing in Pugs. Yuval Kogman made some recommendations.

Support for S05's new "result object"?

Audrey Tang asked if PGE would allow--for instance--making a lexical symbol RETURN visible inside the interpolated block, which would set the result object and return a match success at that position. Patrick R. Michaud had an affirmative reply. There was also a brief discussion on {...} {{...}} for closures in Parrot and Perl 6.

PGE internal attributes change

Patrick R. Michaud noted that r11916 updates PGE's internal attribute names to match the new secondary sigils identified by S12.

PGE: return values in embedded closures

Patrick R. Michaud applied r11921 to PGE to allow embedded closures in rules to designate a "return value" for a match.

Perl 6 on Solaris 10 anyone?

Stefan Parvu asked if there had been any experiments with Perl6/Parrot and Solaris Express or Solaris 10. Andy Dougherty replied that he did not think there were pre-built packages, but that most tests should pass. There was also some clarification of the relationship between Perl 6, Parrot and Pugs.

Parrot-Porters (parrot-porters, formerly perl6-internals)

The parrot-porters list was called perl6-internals during the period covered by this summary.

Compiling Parrot on NetBSD

Steve Peters supplied a patch to support Parrot on NetBSD. Andy Dougherty asked if the different flavours of BSD were distinct enough to require different directories. Steve replied that NetBSD differed from FreeBSD, but said that the directory structure should be chosen based upon the preferences of the Parrot developers.

Later, Bernhard Schmalhofer created a ticket [perl #38670] with Steve's NetBSD support patch.

NCI 'v' versus '' in function parameter signatures

In February, Tim Bunce asked what the difference is between 'v' and '' for NCI function parameters. Leopold Toetsch replied by suggesting that the 'v' variants be removed. Later, Tim submitted a patch, which looked okay to Leopold. chromatic pointed out that functions returning void should use 'v' to avoid future confusion, and Leopold agreed.

Fix for tailcall after newcloser

Bob Rogers sent PIR code illustrating a problem in tailcall which forces the old context to be recycled and included a patch.

Rare failure of t/dynoplibs/myops alarm sequence

Tim Bunce noted a failing alarm sequence test in t/dynoplibs/myops.t but has not been able to duplicate it. Leopold Toetsch reported that this could happen if the machine was busy. Tim requested a warning, and Leopold agreed it would be appropriate.

Valgrind reports

chromatic got Valgrind working on his Linux PPC box and wanted to know if the reports would be useful. Leopold Toetsch welcomed the information.

Todo: fill Parrot_register_move()

Leopold Toetsch created a ticket [perl #38627] with the todo item 'fill the function body of Parrot_register_move()' in src/utils.c. Karl Forner asked for more details about the request, and Leopold offered information.

socklen_t not defined

David Dyck replied to [perl #37906], indicating that he had made progress with the link phase error. Bernhard Schmalhofer requested a patch and test results. David replied that his modifications were just to make the code compile and should not form the basis for a patch.

Allowing push/pop across sub calls

Bob Rogers submitted a patch to allow push/pop across sub calls with the caveat that it breaks PGE. He requested help from someone who understands PGE. Patrick Michaud looked in to the problem. Leopold Toetsch, Chip Salzenberg and Will Coleda also spoke up on the use of the user stack.

Actions aren't called at :outer sub exit

Bob Rogers reported that actions are not being called when an :outer sub exits. He supplied a patch and noted that there was another bug in the same region, which he currently does not have time to address.

Parrot versus NekoVM

Nicholas Cannasse made a benchmark comparing Parrot Win32 and NekoVM which showed Parrot was five times slower and asked why that might be the case. Leopold Toetsch replied that benchmarks are just lies, but went on to offer an explanation. There were a few other comments on the subject.

Lua PCM and garbage collection segmentation fault

Francois Perrad noted a segmentation fault in languages/lua/t/tables_3.pir.

Incompatible change with PASM function call syntax

In r11801, Leopold Toetsch introduced a change in the call argument bits which required all PASM code using function calls to also be modified.

Question on pdd21

In implementing pdd21, Leopold Toetsch had a question on namespaces. Chip Salzenberg had some answers, which led to more questions from Leopold, and another response from Chip.

Patch for nested macro support

Joshua Isom wrote several patches. One was a patch to imcc.l and imclexer.c, a second contained a set of macros, and the third demonstrates many of the macros. Chip Salzenberg was fairly pleased with the ideas. The changes were committed in r11820.

OS X bus error in punie-clone

Will Coleda reported in [perl #38691] that a slightly modified snapshot of punie caused an error. He included details of the problem.

Parrot 0.4.0 to 0.4.2 upgrade problem

James Cloos reported that when upgrading from Parrot 0.4.0 to 0.4.2 there was a failure with make install.

HLL-mapped .Sub PMCs

Leopold Toetsch announced that r11852 made some modifications to HLL-mapped .Sub PMCs.

Small POD error

According to Douglas Hunter, languages/pugs/pmc/pugsany.pmc contained an 'over 4' without a 'back', which made Pod::Simple fail. He included a patch.

Unused and unimplemented opcodes

Leopold Toetsch reviewed some opcodes in core.ops which aren't implemented, and proposed some deletions and modifications. Steve Peters and Jonathan Worthington agreed with the changes, and Leopold implemented them in r11882.

MAYBE_FLAT discussion

Audrey Tang questioned the decision to remove MAYBE_FLAT in r11754 without a warning. Chip Salzenberg apologized and instead created a document patch to address the issue.

tailcalls into the PIR compiler broken

In ticket [perl #38724], Matt Diephouse noted this error. Leopold Toetsch fixed it with revision r11896.

pdd21 questions

Leopold Toetsch had some questions for Chip Salzenberg. Other people also replied to the thread.

Global not found between PIR and PMC

Francois Perrad posted some code and asked what mistake he'd made. Leopold Toetsch responded, which launched a discussion between Leopold and Chip Salzenberg over :: in pdd21.

Support utf8 as an input IO filter

Will Coleda created a todo request in [perl #38733] for a UTF-8 filter.

Comments on namespace patch part 23

Chip Salzenberg responded to Leopold Toetsch's document with comments. One of his questions concerned the rationale behind the parrot:: namespace, which Leopold explained.

.None PMC now returns empty string instead of "None" for get_string

Jerry Gay made a modification to the .None PMC in r11911.

Combining :slurpy and :optional

Patrick R. Michaud had a question concerning combining :slurpy and :optional as an optimization.

parrotcode.org updated (0.4.1 to 0.4.2)

This was done.

PGE update fails some tests under x86_64

Patrick R. Michaud reported that r11921 broke some PGE tests. He requested that someone with more knowledge in this area look in to the problem.

Remove enum_class_max

Leopold Toetsch created a todo ticket [perl #38756] for replacing old globals with real interpreter variables.

complex.exp - gcc issues

In [perl #38757], Leopold Toetsch reported a bug, which Joshua Isom elaborated on.

r11923

Allison Randal made some modifications, and Nick Clark commented on it.

parrot-0.4.2 on FreeBSD 4.10 failure

Pankaj Kaushal reported a bug in parrot-0.4.2 and included the result of gmake tests in ticket [perl #38764].

TGE, precompile more

Will Codela created a todo ticket ([perl #38761]) and chromatic submitted a patch.

early draft of I/O PDD

Allison Randal posted an early draft of the I/O PDD and requested comments. There was a great deal of discussion, especially on socket addresses, seek/tell, basic file IO, and integer types. A second draft was created, and it also received feedback.

Changes to compilers/pge/rulec.pir broke punie

Will Coleda created ticket [perl #38775] to report this error.

Build broken on OS X?

Will Coleda reported a problem with r11684 in ticket [perl #38597]. Joshua Isom noted that he had it working for r11676 and r11686, but that DYLD_LIBRARY_PATH needed to be set. This led to some discussion on the best way to do this. Eventually the problem resolved itself and Will closed the ticket.

trans.t failure on OpenBSD

In [perl #34549], Steve Peters noted a test failure in t/op/trans.t on OpenBSD. Patches were submitted for a number of systems.

r11994 failing tests on FreeBSD

Ryan Hinton reported a number of failing tests in ticket [perl #38788]

make PGE's rulec read utf8

Will Coleda added a patch to promote UTF-8 encoded grammar rules.

rulec.pir should report line numbers on failure

Will Coleda created a todo request ([perl #38794]) for better error reporting.

parser_util.c memory overrun

Andy Dougherty supplied a patch ([perl #38784]) to prevent Parrot from reading possibly unallocated memory.

rebuild language makefile without full re-configure

Will Coleda added a todo item as ticket [perl #38796].

CPP Comment tester overzealous

Will Coleda created a todo ticket ([perl #38797]) showing the problem.

PMC and object creation

Leopold Toetsch would like an instantiate hook and felt that none of the current 14 new opcodes provided the required functionality. There were several suggestions.

property hash changes r12043

Leopold Toetsch introduced a change to use Hash instead of PerlHash for properties.

libparrot.so.0.4.2

Sean Sieger reported being unable to get Parrot to run on Ubuntu 5.10. This led to a lengthy discussion of the problem.

Strange dump output from PGE (x86_64 related?

Patrick R. Michaud elaborated on the strange results he encounters on his x86_64 system and included example output from r12014. After some input, it was determined that it was a GC bug.

Allow passing "todo = $reason" to Parrot::Test::example_output_is, like, isnt

Bernhard Schmalhofer reported a bug with [perl #38760]. chromatic supplied a patch.

skip #7 t/dynoplibs/myops.t for mingw

Jurosz Michal submitted a patch ([perl #38810]) to bypass a Win32 MinGW infinite loop for "tree alarm test". The second version was applied as r12077.

solaris 10 w gcc

Leopold Toetsch reported a bug in [perl #38823].

Language (perl6-language)

Separate compilation and compile-time things

Zohar Kelrich had a comment involving varying results based upon which module compiler was used. Yuval Kogman replied that he felt Perl 6 should use separate compilers.

Multisubs and multimethods: what's the difference?

Joshua Choi asked for some clarification of the difference between multi sub infix:<.. ( Int $min, Int $max ) { ... }> and multi method infix:<.. ( Int $min, Int $max ) { ... }>. Larry Wall and others clarified that there is a difference.

Perl 6 design wiki?

Yuval Kogman suggested the creation of a wiki for several reasons: so that annotations can be attached to synopses, scratchpads are public, etc. Mark Overmeer was supportive but did express some concern about creating another forum, and also about the porting process going on for Perl 5 modules. Discussion on three level namespaces followed.

S06 Splicing clarification

Brad Bowman asked for more information about splicing. Audrey Tang and Larry Wall replied.

RFC - weird stuff I had to do (for fun or profit)

Yuval Kogman requested stories on strange things people have done in the past in the hopes of creating a better understanding unusual uses of Perl 5. He posted his own stories, and a summary of what he learned. Larry Wall had a few comments.

comment scope

Ruud H.G. van Tol suggested a lexical scope for comments. This led to a discussion of POD syntax.

Where can I download perl6?

Apo purchased 'Perl 6 Essentials' and wondered where Perl 6 could be found. Conrad Schneiker provided a link to Pugs, with the caveat that much of the information in the book is outdated.

Multiparadigm Programming

Conrad Schneiker pointed out an interesting book he'd seen at the library and requested that someone write a Perl version at some point.

why no negative (auto reversed) ranges?

TSa noted that S03 explicitly disallows auto-reversed ranges and asked why that was the case. Larry Wall noted that to date, nobody wanted it.

where will we die to?

Yuval Kogman brought up a Catalyst problem debugging the eventual location of a die within a cascade of evals. He suggested that Perl 6 should make it easier to trace an exception. Larry Wall asked how this could be done without impacting performance, and Yuval clarified his request.

UNIX commands: chmod

Gabor Szabo had a proposal for some alterations to chmod. There was discussion on his suggestions.

Acknowledgments

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.

See also


Links Not Working

justthisguy on 2006-07-17T20:37:24

It looks like none of the links are working right now.

Re:Links Not Working

mr_mischief on 2006-07-17T21:12:20

The links all start with 'http://search.cpan.org/perldoc?http:/#groups.google.com' instead of 'http://groups.google.com'.

If someone could just fix the links in the summary, it'd be very much nice. When I copied, decoded, and pasted them into my address bar, they worked. The information is good, but somehow the links got misrepresented in the source.

Re:Links Not Working

audreyt on 2006-07-18T10:56:37

That's indeed very weird, as the version on my submitted journal is good.

Maybe the pending-submission queue picked up an earlier version and discarded the newer submission... In any case, sorry for the messup. :)

Version with fixed links

grantm on 2006-07-18T08:35:14

I think the links are mostly fixed up here ...

Perl 6 Summary (March 2006)

It was pointed out that I was unclear about URLs. I will be using long (original) URLs for web editions and short URLs for mail editions.

Compiler (perl6-compiler)

make error on 9188

Beau E. Cox reported a failure with Pugs r9188, which failed to make smoke and make install. A patch was submitted.

Fwd: The "lrep" thing

Flavio S. Glock posted some information from #perl6 on the phases of Perl 6 development. This included a request to coordinate development efforts.

XML parsing in P6

Premshree Pillai asked about XML parsing in Pugs. Yuval Kogman made some recommendations.

Support for S05's new "result object"?

Audrey Tang asked if PGE would allow--for instance--making a lexical symbol RETURN visible inside the interpolated block, which would set the result object and return a match success at that position. Patrick R. Michaud had an affirmative reply. There was also a brief discussion on {...} {{...}} for closures in Parrot and Perl 6.

PGE internal attributes change

Patrick R. Michaud noted that r11916 updates PGE's internal attribute names to match the new secondary sigils identified by S12.

PGE: return values in embedded closures

Patrick R. Michaud applied r11921 to PGE to allow embedded closures in rules to designate a "return value" for a match.

Perl 6 on Solaris 10 anyone?

Stefan Parvu asked if there had been any experiments with Perl6/Parrot and Solaris Express or Solaris 10. Andy Dougherty replied that he did not think there were pre-built packages, but that most tests should pass. There was also some clarification of the relationship between Perl 6, Parrot and Pugs.

Parrot-Porters (parrot-porters, formerly perl6-internals)

The parrot-porters list was called perl6-internals during the period covered by this summary.

Compiling Parrot on NetBSD

Steve Peters supplied a patch to support Parrot on NetBSD. Andy Dougherty asked if the different flavours of BSD were distinct enough to require different directories. Steve replied that NetBSD differed from FreeBSD, but said that the directory structure should be chosen based upon the preferences of the Parrot developers.

Later, Bernhard Schmalhofer created a ticket [perl #38670] with Steve's NetBSD support patch.

NCI 'v' versus '' in function parameter signatures

In February, Tim Bunce asked what the difference is between 'v' and '' for NCI function parameters. Leopold Toetsch replied by suggesting that the 'v' variants be removed. Later, Tim submitted a patch, which looked okay to Leopold. chromatic pointed out that functions returning void should use 'v' to avoid future confusion, and Leopold agreed.

Fix for tailcall after newcloser

Bob Rogers sent PIR code illustrating a problem in tailcall which forces the old context to be recycled and included a patch.

Rare failure of t/dynoplibs/myops alarm sequence

Tim Bunce noted a failing alarm sequence test in t/dynoplibs/myops.t but has not been able to duplicate it. Leopold Toetsch reported that this could happen if the machine was busy. Tim requested a warning, and Leopold agreed it would be appropriate.

Valgrind reports

chromatic got Valgrind working on his Linux PPC box and wanted to know if the reports would be useful. Leopold Toetsch welcomed the information.

Todo: fill Parrot_register_move()

Leopold Toetsch created a ticket [perl #38627] with the todo item 'fill the function body of Parrot_register_move()' in src/utils.c. Karl Forner asked for more details about the request, and Leopold offered information.

socklen_t not defined

David Dyck replied to [perl #37906], indicating that he had made progress with the link phase error. Bernhard Schmalhofer requested a patch and test results. David replied that his modifications were just to make the code compile and should not form the basis for a patch.

Allowing push/pop across sub calls

Bob Rogers submitted a patch to allow push/pop across sub calls with the caveat that it breaks PGE. He requested help from someone who understands PGE. Patrick Michaud looked in to the problem. Leopold Toetsch, Chip Salzenberg and Will Coleda also spoke up on the use of the user stack.

Actions aren't called at :outer sub exit

Bob Rogers reported that actions are not being called when an :outer sub exits. He supplied a patch and noted that there was another bug in the same region, which he currently does not have time to address.

Parrot versus NekoVM

Nicholas Cannasse made a benchmark comparing Parrot Win32 and NekoVM which showed Parrot was five times slower and asked why that might be the case. Leopold Toetsch replied that benchmarks are just lies, but went on to offer an explanation. There were a few other comments on the subject.

Lua PCM and garbage collection segmentation fault

Francois Perrad noted a segmentation fault in languages/lua/t/tables_3.pir.

Incompatible change with PASM function call syntax

In r11801, Leopold Toetsch introduced a change in the call argument bits which required all PASM code using function calls to also be modified.

Question on pdd21

In implementing pdd21, Leopold Toetsch had a question on namespaces. Chip Salzenberg had some answers, which led to more questions from Leopold, and another response from Chip.

Patch for nested macro support

Joshua Isom wrote several patches. One was a patch to imcc.l and imclexer.c, a second contained a set of macros, and the third demonstrates many of the macros. Chip Salzenberg was fairly pleased with the ideas. The changes were committed in r11820.

OS X bus error in punie-clone

Will Coleda reported in [perl #38691] that a slightly modified snapshot of punie caused an error. He included details of the problem.

Parrot 0.4.0 to 0.4.2 upgrade problem

James Cloos reported that when upgrading from Parrot 0.4.0 to 0.4.2 there was a failure with make install.

HLL-mapped .Sub PMCs

Leopold Toetsch announced that r11852 made some modifications to HLL-mapped .Sub PMCs.

Small POD error

According to Douglas Hunter, languages/pugs/pmc/pugsany.pmc contained an 'over 4' without a 'back', which made Pod::Simple fail. He included a patch.

Unused and unimplemented opcodes

Leopold Toetsch reviewed some opcodes in core.ops which aren't implemented, and proposed some deletions and modifications. Steve Peters and Jonathan Worthington agreed with the changes, and Leopold implemented them in r11882.

MAYBE_FLAT discussion

Audrey Tang questioned the decision to remove MAYBE_FLAT in r11754 without a warning. Chip Salzenberg apologized and instead created a document patch to address the issue.

tailcalls into the PIR compiler broken

In ticket [perl #38724], Matt Diephouse noted this error. Leopold Toetsch fixed it with revision r11896.

pdd21 questions

Leopold Toetsch had some questions for Chip Salzenberg. Other people also replied to the thread.

Global not found between PIR and PMC

Francois Perrad posted some code and asked what mistake he'd made. Leopold Toetsch responded, which launched a discussion between Leopold and Chip Salzenberg over :: in pdd21.

Support utf8 as an input IO filter

Will Coleda created a todo request in [perl #38733] for a UTF-8 filter.

Comments on namespace patch part 23

Chip Salzenberg responded to Leopold Toetsch's document with comments. One of his questions concerned the rationale behind the parrot:: namespace, which Leopold explained.

.None PMC now returns empty string instead of "None" for get_string

Jerry Gay made a modification to the .None PMC in r11911.

Combining :slurpy and :optional

Patrick R. Michaud had a question concerning combining :slurpy and :optional as an optimization.

parrotcode.org updated (0.4.1 to 0.4.2)

This was done.

PGE update fails some tests under x86_64

Patrick R. Michaud reported that r11921 broke some PGE tests. He requested that someone with more knowledge in this area look in to the problem.

Remove enum_class_max

Leopold Toetsch created a todo ticket [perl #38756] for replacing old globals with real interpreter variables.

complex.exp - gcc issues

In [perl #38757], Leopold Toetsch reported a bug, which Joshua Isom elaborated on.

r11923

Allison Randal made some modifications, and Nick Clark commented on it.

parrot-0.4.2 on FreeBSD 4.10 failure

Pankaj Kaushal reported a bug in parrot-0.4.2 and included the result of gmake tests in ticket [perl #38764].

TGE, precompile more

Will Codela created a todo ticket ([perl #38761]) and chromatic submitted a patch.

early draft of I/O PDD

Allison Randal posted an early draft of the I/O PDD and requested comments. There was a great deal of discussion, especially on socket addresses, seek/tell, basic file IO, and integer types. A second draft was created, and it also received feedback.

Changes to compilers/pge/rulec.pir broke punie

Will Coleda created ticket [perl #38775] to report this error.

Build broken on OS X?

Will Coleda reported a problem with r11684 in ticket [perl #38597]. Joshua Isom noted that he had it working for r11676 and r11686, but that DYLD_LIBRARY_PATH needed to be set. This led to some discussion on the best way to do this. Eventually the problem resolved itself and Will closed the ticket.

trans.t failure on OpenBSD

In [perl #34549], Steve Peters noted a test failure in t/op/trans.t on OpenBSD. Patches were submitted for a number of systems.

r11994 failing tests on FreeBSD

Ryan Hinton reported a number of failing tests in ticket [perl #38788]

make PGE's rulec read utf8

Will Coleda added a patch to promote UTF-8 encoded grammar rules.

rulec.pir should report line numbers on failure

Will Coleda created a todo request ([perl #38794]) for better error reporting.

parser_util.c memory overrun

Andy Dougherty supplied a patch ([perl #38784]) to prevent Parrot from reading possibly unallocated memory.

rebuild language makefile without full re-configure

Will Coleda added a todo item as ticket [perl #38796].

CPP Comment tester overzealous

Will Coleda created a todo ticket ([perl #38797]) showing the problem.

PMC and object creation

Leopold Toetsch would like an instantiate hook and felt that none of the current 14 new opcodes provided the required functionality. There were several suggestions.

property hash changes r12043

Leopold Toetsch introduced a change to use Hash instead of PerlHash for properties.

libparrot.so.0.4.2

Sean Sieger reported being unable to get Parrot to run on Ubuntu 5.10. This led to a lengthy discussion of the problem.

Strange dump output from PGE (x86_64 related?

Patrick R. Michaud elaborated on the strange results he encounters on his x86_64 system and included example output from r12014. After some input, it was determined that it was a GC bug.

Allow passing "todo = $reason" to Parrot::Test::example_output_is, like, isnt

Bernhard Schmalhofer reported a bug with [perl #38760]. chromatic supplied a patch.

skip #7 t/dynoplibs/myops.t for mingw

Jurosz Michal submitted a patch ([perl #38810]) to bypass a Win32 MinGW infinite loop for "tree alarm test". The second version was applied as r12077.

solaris 10 w gcc

Leopold Toetsch reported a bug in [perl #38823].

Language (perl6-language)

Separate compilation and compile-time things

Zohar Kelrich had a comment involving varying results based upon which module compiler was used. Yuval Kogman replied that he felt Perl 6 should use separate compilers.

Multisubs and multimethods: what's the difference?

Joshua Choi asked for some clarification of the difference between multi sub infix:<.. ( Int $min, Int $max ) { ... }> and multi method infix:<.. ( Int $min, Int $max ) { ... }>. Larry Wall and others clarified that there is a difference.

Perl 6 design wiki?

Yuval Kogman suggested the creation of a wiki for several reasons: so that annotations can be attached to synopses, scratchpads are public, etc. Mark Overmeer was supportive but did express some concern about creating another forum, and also about the porting process going on for Perl 5 modules. Discussion on three level namespaces followed.

S06 Splicing clarification

Brad Bowman asked for more information about splicing. Audrey Tang and Larry Wall replied.

RFC - weird stuff I had to do (for fun or profit)

Yuval Kogman requested stories on strange things people have done in the past in the hopes of creating a better understanding unusual uses of Perl 5. He posted his own stories, and a summary of what he learned. Larry Wall had a few comments.

comment scope

Ruud H.G. van Tol suggested a lexical scope for comments. This led to a discussion of POD syntax.

Where can I download perl6?

Apo purchased 'Perl 6 Essentials' and wondered where Perl 6 could be found. Conrad Schneiker provided a link to Pugs, with the caveat that much of the information in the book is outdated.

Multiparadigm Programming

Conrad Schneiker pointed out an interesting book he'd seen at the library and requested that someone write a Perl version at some point.

why no negative (auto reversed) ranges?

TSa noted that S03 explicitly disallows auto-reversed ranges and asked why that was the case. Larry Wall noted that to date, nobody wanted it.

where will we die to?

Yuval Kogman brought up a Catalyst problem debugging the eventual location of a die within a cascade of evals. He suggested that Perl 6 should make it easier to trace an exception. Larry Wall asked how this could be done without impacting performance, and Yuval clarified his request.

UNIX commands: chmod

Gabor Szabo had a proposal for some alterations to chmod. There was discussion on his suggestions.

Acknowledgments

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.

See also