Robert Gustavsson wrote:
>To use parentheses when the complexity level reaches a certain level or to
>be consistent and use them all the time. To use them all the time has in
>fact sped up my C/C++ coding because I never have to stop and think about
>precedence rules like I used to do. Maybe it is a bit different with an
>interpreting language that has to throw away all those unneccessary
>parentheses? Maybe this won't be an issue if there will be such a thing like
>a RubyVM?

I always put parens around parameters to function 
calls, for visual consistency and to eliminate 
any possibility of getting messed up by 
precedence. Ok, I lied. I don't usually put 
parens around calls to #p, and sometimes I leave 
them off #puts and/or #print.

I waffle on empty parens when no parameters are 
passed. My C++ training leads me to want them, 
partly to "know" whether I'm calling a method or 
getting a variable/attribute. But I'm headed 
towards trusting the language and code enough not 
to worry about the difference.

For expressions, my rules in Ruby are about the 
same as my rules in C++. Generally if something 
is more complex than (a=b && c=d) or if it's math 
involving perators other than +,-,*,/ I'll start 
adding parens until it seems unambiguous.

Kevin