On Thu, Aug 04, 2005 at 09:29:21PM +0400, Andrew Shitov wrote:
: in fact, that is exactly
: 
:     (print.getArgument(3) * 3); the same as above.
: 
: so why not 'print($x)' == 'print ($x)' ;-)

Because most people's expectations diverge from yours, actually, and
we got tired of answering the FAQ.  On top of which, we think it's
probably easier to retrain you than the typical newbie.  :-)

Plus we got rid of Perl-5's no-op unary +, so instead we're using
whitespace to force it to be a list operator.  But the overriding
reason is that we're trying to be consistent about using whitespace
to distinguish postfix operators from binary operators or terms when
it's ambiguous.  We also consisently allow dot to force it the other
way even in the presence of whitespace.  If you were to add a ++ binary
operator, it would be distinguished from postfix ++ by whitespace.
But .++ would be the postfix anyway.

Larry

Reply via email to