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