On Thu, Mar 12, 2009 at 04:03:15PM -0300, Daniel Ruoso wrote: : Em Qui, 2009-03-12 às 11:49 -0700, Larry Wall escreveu: : > In addition to what Jonathan said, it is possible that the ability : > to coerce multiple arguments depends on the type itself, since we : > probably want to allow Foo(1,2,3) and such for listy types that : > don't necessarily want to use the [1,2,3] shortcut. : > But my main point is that $x = Foo $bar is a two-terms-in-a-row : > error when Foo is anything resembling a type, enum, or value, none : > of which expect to be turned into a listop or prefix. This is : > independent of how the object might respond to (), if at all. : : I see, but I insist... isn't it weird that we use the absolutely same : syntax for unrelated meanings? : : > Oh, btw, re irc conversation the other day, .() and () are always : > identical in postfix position, just as .++ and ++ are the same. : > The . carries no semantics when qualifying a postfix, even when : > accessing attributes $.foo.() vs $.foo(), which mean exactly the : > same thing because such postfixes are part of the special form. : : Just a quick paste for those not following IRC... : : <ruoso> so do I always need to use two sets of parens when I'm accessing : an attribute that happens to contain a closure that I want to invoke? : <TimToady> yes
Changed my mind, or had it changed for me. :) See last update. Larry