On Tuesday, 12 January 2016 at 20:25:25 UTC, Andrei Alexandrescu wrote:
D uses !(b < a) for a <= b. We can invent notation to disallow that rewrite.

Anyhow the use of <, >, <=, and >= for partially ordered types is bound to be less than smooth. Math papers and books often use other notations (such as rounded or square less-than) to denote operators for partially ordered data, exactly because denoting them with the classic notation may confuse the reader.


Andrei

It is perfectly fine to use !(b < a) for a <= b. But as John has pointed out this is sensible only if '<=' is total.

Personally, I'm unsure about the best solution for D. I understand Walter's argument to 'keep it simple' and do not support non-total opCmp. On the other hand it is a bit unsatisfactory that one cannot write a custom type that behaves like float.

Reply via email to