On Thu, Mar 22, 2012 at 17:08, trans (Thomas Sawyer) <transfire / gmail.com>wrote:

> I can't think of single reason why anyone would actually have to have a
> "private", as opposed to a "public", constant. Constants are CONSTANT so
> they aren't supposed to be changed after they are defined anyway --indeed
> normal channels of doing so will cause a warning. And constants aren't
> methods, so they aren't something you can call to effect object state. So
> what's the point?


You can have constants defined which are purely an implementation detail
that you don't want to be public-facing, because they aren't intended to be
relied upon or modified. Hiding private modules and classes aside, I can
see a benefit from hiding that information.