std.experimental.checkedint is ready for comments!

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Tue Jun 14 17:16:12 PDT 2016


Overall, I find the documentation to be unusually good. Nice work!

================================================

.noex

   The .noex member is oddly named, being a negative and no idea what 'ex' 
means. It sets a sticky flag on error, so perhaps .sticky?

---
N is a basic integral type, it needs a better name than 'N'. How about 
'BaseType' or even 'BaseIntegralType'? A complete list of what types are 
acceptable for 'N' would be desirous, too.

---
'bscal' is a complete mystery without reading the documentation. Perhaps 'value' 
instead?

---
enum IntFlagPolicy policy;

   Should contain a link to the complete explanation.

---
Should have a "References:" section with link to core.checkedint

---
-O (DMD) should be a link to the -O flag instructions 
http://dlang.org/dmd-windows.html#switch-O

---
'--inline' is not a DMD switch

---
Remove all use of 'you' and 'your' from the documentation. For example:

"If you really need more speed, try switching to DebugInt for the hottest code 
in your program (like inner loops) before giving up on checkedint entirely."

becomes:

"For more speed, switch to DebugInt for the hottest code in the program (like 
inner loops)."

(The internal link to DebugInt is wrong.)

And:

"This way, you can use SafeInt!N to debug your integer logic in testing, but 
switch to basic N in release mode for maximum speed and the smallest binaries."

becomes:

"This way, use SafeInt!N to debug integer logic in testing, but switch to basic 
N in release mode for maximum speed and the smallest binaries."

Reference material should never contain "you" or "your".

---
"debuggin" => "debugging"

---
There's an overall lack of use of internal links to navigate within the page.

---
Functions are tagged @safe. Are there any unsafe functions?


More information about the Digitalmars-d mailing list