This file is part of the Perl 6 Archive

Note: these documents may be out of date. Do not use as reference!

To see what is currently happening visit http://www.perl6.org/

Perl 6 Summary for 2004-11-29 through 2004-12-06

All~

Last week I asked for help identifying the source of a quotation. One friendly soul suggested Alan J. Perlis, but could not find an actual attribution. It did lead me to find a very applicable (and in my mind funny) quote from Perlis, which I will now inflict upon you all, before your regularly scheduled summary:

When someone says "I want a programming language in which I need only say what I wish done," give him a lollipop. -Alan J. Perlis

Perl 6 Language

qq:i

Jim Cromie wondered if there could be a qq:i which sometimes interpolates and sometimes doesn't depending on whether the variable had been previously defined. There was some discussion which led to the conclusion that this was just asking for strange bugs.

groups-beta.google.com&_doneTitle=Back&&d#1f29abcbe56bfbfe

getters and setters

John Siracusa wanted to know if Perl 6 would allow one to expose a member variable to the outside world, but then later intercept assignments to it without actually having to switch to using getters and setters in all of the code that uses the variable. The answer: yes, yes you can.

groups-beta.google.com&_doneTitle=Back&&d#5a9e80e5952d2d10

\xAB foo >>

Richard Proctor asked if he could do <<list of words\xBB. Juerd pointed out that this had already been asked. Which brings us to the fine point, ask not Larry for he will tell you both yes and no. Although in this case I think he said, probably...

groups-beta.google.com&_doneTitle=Back&&d#fbcc955466c79c95

flipflop operator

Juerd wondered about the fate of the flipflop. Larry explained that while it had lost the election it was still going to work hard for you in the Senate. Err, that's not quite right, he said that "It's leaving syntactically but not semantically.", but the new syntax has not been specified...

groups-beta.google.com&_doneTitle=Back&&d#e35a284b1e68a454

temp $var

Alexey Trofimenko wanted to know whether temp would preserve or destroy its old value. Larry is leaning towards the Perl 5 semantics of destroying, I think.

groups-beta.google.com&_doneTitle=Back&&d#5341da569ccf67dd

state vs my

Alexey Trofimenko wondered how much advice about optimizing Ruby also applied to perl. Unfortunately, he also misunderstood the state specifier. The topic then quickly veered into what exactly state does.

groups-beta.google.com&_doneTitle=Back&&d#b2febbdc269ea8e6

specifying a hash's key type

Abhijit Mahabal wanted to know if he could specify a hash's key type. The answer is yes, but the exact syntax seems to be worth a discussion. Luke Palmer, in his Mathematician's rage, attempted to shoot down any usage of Domain and Range, as they really should be Domain and Codomain.

groups-beta.google.com&_doneTitle=Back&&d#6cceddfaac9b6a23

en.wikipedia.org -- wikipedia: range Range (mathematics) - Wikipedia, the free encyclopedia

container methods

Ashley Winters wants to have syntax for calling a method on the container object rather than the containee. Luke Palmer agreed that this was problematic. Larry appears to be in no hurry to add more operators for this one, yet.

groups-beta.google.com&_doneTitle=Back&&d#975ca916a337f524

slight discrepancy between synopses

St\xE9phane Payrard pointed out a small issue in some synopses. Larry replied oops.

groups-beta.google.com&_doneTitle=Back&&d#1e7c0a77327dbf88

arrays, lists, iterators, functions, coroutines, syntax

Many people suggested many things about the best thing to replace the now missing < > op. I think Larry is leaning towards adding a undare = op, which would do cool things. I don't thing anything is final yet.

groups-beta.google.com&_doneTitle=Back&&d#1169615c9bfdc0e2 -- iterators as functions

groups-beta.google.com&_doneTitle=Back&&d#93e0c356ddf3afcd -- unary = talk

Push/Pop/Pull/Monkey

Many folk voiced their dislike of shift and unshift. I must agree with them, but they also suggested a great many alternatives, including pull/put, get/unget, and even getting rid of Push/Pop. I must say that I really dislike that last idea, fortunately I am no alone. Currently we are waiting for inspiration to strike.

groups-beta.google.com&_doneTitle=Back&&d#93e0c356ddf3afcd

Topicalization

It was noticed that for might override one's topic at undesired times. Larry rumminated about ways to solve this.

groups-beta.google.com&_doneTitle=Back&&d#93e0c356ddf3afcd

Required Whitespace

Rod Adams does not like inconsistent whitespace rules. Larry explained why the existing rules really were consistent.

groups-beta.google.com&_doneTitle=Back&&d#93e0c356ddf3afcd

Perl 6 Compilers

The lack of traffic on p6c has given me another space to abuse. You should listen to "Soul Coughing". If you would like to join in the fun of abusing p6c, you should submit tests. Nothing is more abusive then stress testing ;-)

Parrot

Tuning and Monitoring

Matt S asked how much support for tuning and monitoring. This week I exercise the awesome powers of the summarizer and invoke the mighty Warnock's Dilemnia.

groups-beta.google.com&_doneTitle=Back&&d#6bedca9a038ed1d9

imcc.globals--

Leo removed some imcc globals. Nice work.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#028cfc120dffd3a1

ensure directories exist first

Andy Dougherty fixed a problem with writing a file in a non-existant directory. Leo applied the patch.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#b7e77e4177a5e0b7

Namespace-sub invocation

Last week Luke Palmer wanted to know about calling subs in namespaces. I posted Leo's answer, but Dan does not like it. It should be a two step process. First fetch, then invoke.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#5805eb2e5eb0bb02

What is an opcode?

Thomas Seiler attempted to clear up some perceived confusion about what exactly an "opcode" is. No responses...

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#34d31c62a32b54be

Lexicals, continuations, and register allocation

Dan voiced a final word in this long lived and lively thread, which kicked off several children. Return Continuations (even once promoted) restore their registers.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#0603ff13ca52f0ff -- Dan's ruling

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#4c15aa4a1f56c20a -- the long and lively thread

keyword arguments

Sam Ruby wondered how he out to handle keyword arguments to functions. Dan admitted that this is complex and outlined the cheat he has been contemplating. No one has either commented on or implemented it yet.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#f22bdbb497de3975

What is and isn't up for grabs

Dan attempted to layout clear rules as to what things he would entertain until parrot was functionally complete. Lets hope it sticks.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#b594c3a38848d19a

AST + COMPILE_IMMEDIATE == :-(

Bernhard Schmalhofer provided a patch to fix some of the :-(. Leo applied it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#8a916b80e4dc4c20

t/dynclass/pybuiltin.t fails

Will added a BUG to RT for this.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#bc5bad4a9a843190

benchmark tests

Justin DeVuyst submitted a patch, which fell through the cracks, to make the benchmarks also be tests. Fortunately Matt Diephouse rescued it from the cracks, and Leo applied it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#6e273b614f34004a

too many opcodes

Leo voiced his opinion that there were too many opcodes and suggested a scheme for cutting down on them. Dan corrected him that there were not too many. Despite this surface disagreement, however, the spirit of Leo's complaint was addressed by Dan. Thus, they can both be happy.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#64547f8c695af32e

C89 issues

There was a little confusion about whether or not variable declarations could follow code or not in C89. The answer is not.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#1bf9ebeca3e9fe3f

perlhash iter busted

Sam Ruby noticed that the perlhash iter did not work. So he submitted a test case for it. Leo fixed it (and presumably applied the test).

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#b79d4f2f7409bbde

warnings cleanup

Garrett Rooney submitted a patch to fix some warnings. Leo applied it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#4aec9b7ad3ac3aae

Objects, classes, metaclasses, and MMD dispatch

Dan's attempt to spec out objects from last week led to some discussion of MMD. Leo suggested an implementation, and silence reigned.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#a59e8326a855b612

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#2c13224380f7b64b -- more MMD stuff

more Tcl stuff

Will added more new stuff to Tcl. Yay, Will!

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#873d4926bf1d80ef

internal exception clean up

James deBoer submitted a patch that cleans up internal exception output. Then later he submitted a second better version of the patch. Warnock applies.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#9504b2207764af73

dynamic evaluation of PAST

Bernhard Schmalhofer submitted a patch to add support for PAST dynamic evaluation. Leo applied it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#05d1c7ecf5d40021

Inline Caching

Leo explained inline caches and why 19 out of 20 calls like them. This led to his suggesting that some of the opcodes we have which get offsets from strings are a premature optimization. This led to some discussion about whether or not what he suggested was in the Dan's earlier mandate.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#a4b461185a77d149 -- inline caching

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#ce8deb56f8b293b4 -- Leo's suggestion

help target in make

Bernhard Schmalhofer (whose name makes me very thankful for copy and paste) submitted a patch anding new help target to parrot/docs/Makefile. Will appied it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#881f8aef14e5bd29

Parrot and Strong Types

Cameron Zemek asked about supporting strongly typed languages on Parrot. I got strong typing and static typing confused, fortunately Dan came to the rescue with a good explanation. During the course of this thread, both Haskell on Parrot and Prolog on Parrot got suggested. I like them both, a lot.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#1b4029708201449c -- original message

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#1b4029708201449c -- Dan to the rescue

move libnci.def out of root dir

Mitchell ::mumble:: provided a patch to do the above some time ago. Will rescued it and asked for a ruling. The ruling is that it should be done. I don't know if it WAS done, but it should be.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#428b477f8cfdc896

Tru64 cc/ld issues

Jarkko Hietaniemi posted a problem with building on Tru64. Sam Ruby committed it.

groups-beta.google.com&_doneTitle=Back+to+topics&_doneTitle=Back&&d#e04b3c73c582e4f4

The usual footer

If you find these summaries useful or enjoyable, please consider contributing to the Perl Foundation to help support the development of Perl. You might also like to send feedback to [email protected]

donate.perl-foundation.org -- The Perl Foundation dev.perl.org -- Perl 6 Development site planet.parrotcode.org -- Parrot Blog aggregator