FYI - UpperCamelCase == PascalCase


I know I'm being a stickler here but there's no such thing as upper and lower camel case.

What you are calling UpperCamelCase is in fact, PascalCase.  That which you are calling lowerCamelCase is just camelCase.

Are you doing to Agent Smith what Microsoft is trying to do to ReSharper?  Just curious..



Hello Jonathan,

We had some internal debate about "case" naming, and decided to stick with
"For clarity, this article calls the two alternatives upper camel case and
lower camel case. Some people and organizations use the term camel case only
for the latter, and refer to upper camel case as Pascal case."

Also, provided that we use CamelHumps term for abbreviation lookup, we thought
that using CamelCase name for both PascalCase and camelCase is a bit more

As for Agenth Smith, we didn't even came close to what it offers, we did
bare minimum to solve issues of our users with different naming conventions
complaining for years. But we did a big step to help plugin by making naming
system expandable. We actually expect plugin to use this system more, so
it integrates with other features, like Generate (Alt-Ins) when creating
names for new entities.

Ilya Ryzhenkov

JetBrains, Inc
"Develop with pleasure!"

IR> Guys,
IR> I know I'm being a stickler here but there's no such thing as upper
IR> and lower camel case.
IR> What you are calling UpperCamelCase is in fact, PascalCase. That
IR> which you are calling lowerCamelCase is just camelCase.
IR> Are you doing to Agent Smith what Microsoft is trying to do to
IR> ReSharper? Just curious..
IR> Jon
IR> ---
IR> Original message URL:


While I don't disagree entirely with your reasons behind your decisions, I do feel the need to cast my vote:

The terms PascalCase and camelCase have been around far longer than any "UpperCamelCase"/"lowerCamelCase" term that might appear on some wiki page that uses the _phrases_ "upper camel case" and "lower camel case" solely to disambiguate and which only uses the exact form "lowerCamelCase" once. The precedent for PascalCase and camelCase is positively ancient, going back literally decades in the case of PascalCase. I suspect camelCase is similarly old but can't be absolutely certain.

What is clear is that:

  • PascalCase and camelCase have a strong history and are well understood terms
  • UpperCamelCase serves only to confuse people (how can camel case even be upper, as the camel's hump (or humps) are only in the middle)
  • lowerCamelCase is simply redundant.

I can't speak for others, but I can say that I would personally prefer if ReSharper adopted the most-used convention instead of picking up on some far-lesser-used variant that also happens to be internally inconsistent (in that you can't have an upper camel case as humps are only in the middle and even if you did it would simply be pascal case.)

Just my two bits, of course.


I agree, PascalCase and camelCase



I agree with you about properly naming it PascalCase. That's how I've always known it and believe is the proper terminology, however I wouldn't get confused over it. I really don't think any developer would either.

As for you last comment, I feel it's a bit short-sighted. As much as I enjoyed AgentSmith, I still felt Naming Conventions should be part of the R# plugin itself and not some 3rd party extension. Before I even knew about AgentSmitch I was looking all over these forums to find ways R# could do this. I'm glad we now have the option of using either of the two. AgentSmith still offers features which R# does not so there's no real reason to start waiving the Antitrust flag.


I admit the AgentSmith remark was a knock..

But I find configuring AgentSmith with naming rules to be easier for my purposes.  Maybe I'll need to get used to R#'s way too.

BTW, I wasn't referring to confusion when I noted the PascalCase v. camelCase convention.  I just think we already have known and acceptable terms for the two -- why add more?  Just because it's not confusing, doesn't make it correct.

Why say orientated when oriented will do?  I could go on, but I won't. ;-)


I agree that PascalCase and camelCase are better names.

They have longer history and are shorter to type and say aloud.
I would favor renaming the "Use CamelHumps" feature, or simply living with it's existing name.


Please sign in to leave a comment.