Programmers seem to have, in most cases, an almost 'religious' opinion about the programming languages they use. For many years I've been talking about this and saying this is not only ridiculous, but also dangerous.
When one have this kind of position, defending something beyond rationality, it is difficult to improve this something. No criticism, no change.
I love Ruby. In many senses it is the best programming language I've ever used. And god knows I used many of them in the last 33, since I learned FORTRAN back in 1984.
But Ruby is not perfect. As all other languages, it has its share of bullshit and this post is to talk about one of them.
If you visit this blog here you'll find this strange explanation
So, in Ruby we have 'mutable constants'. And I ask what is the meaning of calling something 'a constant' if you may change its value anytime you want. I don't know exactly what was in Matz mind when he planned this, but this is not good, this is not sensible, in my humble opinion.
And here we are. We need freeze to make a constant really constant. Ruby programmers are always talking about semantics. Now, what could be less semantic than this?
What I am telling you is... Don't be blinded by the love you feel for your programming language. When you do this, you avoid criticizing it, and this slows down its evolution.