This is a continuation of my previous post about rvalue references. As you may know, official C++ specification is not free: it costs upwards of $100, which, I dare to say, is a non-trivial amount of money for any developer, even in first world countries.
Still, even at $116 this is out of reach/unreasonable for most people. Yes, draft versions of the standard are available for free, but you never know how much they differ from the official one, and final drafts are password protected.
I saw some people going as far as to claim that one does not need the standard unless they are a language lawyer. I find this point of view condescending and, frankly, wrong. You cannot learn C++ by looking at the standard, but in quirky cases (and trust me, C++ has plenty), it is always good to consult the official law. So, what a developer can do? Cough up $116 (unlikely), find a friend who has a copy (also unlikely, but possible), obtain it illegally on some kind of shady web site, or resort to a draft hoping it was not too different from reality. None of these choices are attractive.
I remember that PDF copy of the C++ ’98 standard was available for something like $20: this was a smart move and a reasonable compromise. To wit, I actually bought a copy. While still quite expensive for many in developing countries, this was cheaper than most technical books you find on Amazon or in bookstores. I bet they made more money on this $20 standard than on the $200 one they have now.
Oh well… Going back to my free languages now. 🙂