Guy N. Hurst [mailto:gnhurst / hurstlinks.com] wrote:

> Actually, there was a discussion about this last year 
> somewhere and it was concluded by those involved that 
> underscore_style was for 
> verbs (methods), and CamelCase was for nouns (like classes). 
> This is not a requirement, of course, but seems consistent 
> with what I have come to expect, and is what I follow. 

I agree completely with those two (classes and methods)... the hard ones
for me are variable names and file names. Variable names are tough
because they have a way of turning in to method names, i.e. I have an
instance variable, and I decide to expose it, thus it's a variable name
AND a method name. I've decided to go with underscores for all my
variables for exactly this reason. I suppose I could still use camelCase
for temporary variables, but I think madness lies that way.

File names are tough because there seems to be a real resistance to them
having capitalization in them. Thus I've gone to using underscores for
file names as well. It still bugs me, though, to have MyClass be in a
file named my_class.rb. But oh well.

The thing that really clinched it for me on the whole underscore thing
was when someone at the RubyConf said that when he saw someone using
camelCase in their code, he identified them as not having fully grokked
Ruby. 'Course that doesn't fit at all for Dave and Andy, but in my case,
I know I was coming off of Java, and was imposing my expectations and
standards from that world on to my Ruby coding.

One comment I read in the list a while back about camelCase vs.
underscores that I thought was interesting is that for non-native
English speakers, underscore names are much easier to read. It might
explain their usage in the core library.

In the end, I believe one can get used to and comfortable with most
anything. While it would be nice to settle on a standard, dealing with
other's code is increasing my ambinamestrousness, which can't be a bad
thing. :-)

Just thought I'd add a few more datapoints in a discussion that doesn't
look like it'll go away for a while (if ever).

Have_fun_code_Ruby,


Nathaniel

<:((><
+ - -
| RoleModel Software, Inc.
| EQUIP VI