On Mon, 30 Sep 2002, Michael G Schwern wrote: : On Tue, Oct 01, 2002 at 01:36:19AM +0100, Simon Cozens wrote: : > [EMAIL PROTECTED] (Michael G Schwern) writes: : > > method _do_internal_init ($num) is private { : > : > Just thinking aloud, would : > sub foo is method is private is integer is fungible { : > : > be better written as : > sub foo is fungible private integer method { : > : > or not?
It's potentially ambiguous. Here's a bad example, but there are probably better ones: my $foo is rw cmp ""; Plus we have to worry about arguments to properties, if we allow anything other than (). I'd personally like to see some properties that can take a closure as their argument, but the parser would have to know that in advance or the "method" property above would slurp up the subroutine block by accident. Or the sub block itself needs a keyword. : How about seperated by commas, like any other list? : : method foo is fungible, private, integer { Is ambiguous: my ($foo is foo, bar, $bar is baz) = (1,2); Also, precedence of comma with respect to assignment causes problems. We may be able to relax this later somehow, but for now we're saying that "is...is...is..." isn't all that onerous. To which the only correct reply is, "but...but...but..." :-) Larry