On Friday, 13 July 2012 at 01:22:59 UTC, Jonathan M Davis wrote:
There's big difference between a library and a the language itself.

Surely that's a non sequitur... Aren't we modifying druntime here?
What part of this has to do with the _language_? Isn't druntime a library?

Also, why can't you tell the user, "it's open-source! If it doesn't suit your needs, go modify it! Removing const is trivial!" What makes it so easy to say that about every library /except/ druntime?



You mean, "how do you choose *not* to use opEquals()?"?

Yes. Restrictions placed on Object affect _everyone_ using the language, whereas restrictions placed on a particular library only affect the users of that library. So, Object needs to be able to work without forcing const on anyone using it, whereas a 3rd library doesn't necessarily need to.


1. Again, see above -- Object is also in a library. Why doesn't the reasoning apply there? It's trivial to remove const from the library and recompile it -- _FAR_ easier than it is to modify any arbitrary library. (Speaking of which, thanks for making it so easy to modify & recompile druntime!)


2. Isn't it kinda /trivial/ to avoid opEquals? Just don't use it. Make up your own method. What's wrong with this?

Reply via email to