On Thursday, 20 February 2014 at 20:52:23 UTC, Xinok wrote:
Others have suggested disallowing comparing a signed type with an
unsigned type. I think this is a better solution. Yes, it will
add a small bit of overhead, but I believe it's more important
for code to be correct than to be fast.
I totally agree. However, since we need correct code, we need way more features than this. I was surprised to find out that we don't have any "SafeInt" type in D... I was sure someone had made it but I wasn't able to find it anywhere.

My ideal int type:
-Has an equivalent of NaN, meaning it doesn't have "0 initialization" which is somewhat bug-prone. -Is able to signal errors like overflow/division by zero, would be nice if throwing could be avoided. -Signed, but can be flagged as ">0 only", and signals an error if it gets assigned a negative value. -Some extra features that are surely awesome but I'm forgetting right now.

Any takers?
Man, I wish I had time :S

Reply via email to