Not wanting to troll you here but is this really a problem?

Adding complexity to the language to hide things but at the same time 
requiring a way to circumvent the protection will achieve very little 
for much work. Remember I could just read the source code and use them 
with const_get.

If you provide good documentation for your module and the programmers 
have no need to access these constants then they wont. I do all of my 
programming using the docs, as I would guess most of the rest of us do. 
We have better things to do with our time than to dig into your code, we 
have stuff to write.

And then there is the ego thing. Do you honestly think that you know 
better than every programmer who will ever use your module? There could 
be a real need to get at those constants, you are not omnipotent so just 
document your api and warn the users that if they use anything outside 
of the documented api then on their head be it.

There is a theory about government that as time passes people will think 
that they should pass some laws or something just to prove their own 
vitality. There seems to come a point in with languages these days that 
people feel that they need to add feature just to show the language is 
alive.

I blame Microsoft :)

Again I am not trolling you but I don't see this adding something to 
Ruby that is missing.