Walter Bright wrote:
Andrei Alexandrescu wrote:
Let's not confuse undefined with implementation-defined. I am firmly convinced that memcmp never falls in the undefined behavior realm. The behavior is always defined.

Makes sense. But I'd still want to make it not @safe, by using a more expansive definition of @safe to include some implementation defined behaviors.

It's funny how we are trading places. Til now I was the stickler for safety.

I agree with the noble spirit, but not with the lack of precision. To me the main attraction of @safe is that it has a very clear definition. For example, that allows me to sleep at night in spite of ~=.

You want to define @safe more loosely and more judgement-call-ish depending on how you feel about various particular cases. I don't like that. First, it means that now safety becomes a subjective matter. People on the newsgroup can now argue forever about how various idioms should or shouldn't be @safe. Bartosz is getting the debating equivalent of a Gatling gun because now he can credibly argue that ~= could be considered not safe. Finally, if you're in a bad mood because your shoes are too tight one day, something will not be @safe that should be. All that I don't like at all. It's not science, not engineering, and not even design. It's just doing things by ear. We've spent literally the past few years trying to eliminate such things from D, so we shouldn't counter that with a completely subjective call.


Andrei

Reply via email to