RFC in Comparison between Rust, D and Go
Walter Bright via Digitalmars-d
digitalmars-d at puremagic.com
Sat Nov 14 03:30:03 PST 2015
On 11/14/2015 1:58 AM, Ola Fosheim Grøstad wrote:
Like I said, you think the points I raised are all non-issues. You'll change
your mind once you try to implement one, and then try to support it with a
diverse group of customers.
> C99 defines [...]
I just have to laugh. You even admit that Microsoft C doesn't implement C99.
What do you think is going to happen when you file a bug report? Do you really
believe that all the other C compilers out there are C99 compliant? Or even C89
Remember the Warp C preprocessor I wrote a couple years ago?
Guess what happened when I found out that people were relying on bugs in gcc's
preprocessor, not to mention all of its non-standard behavior.
> Modern C has headers with exact bit representations though.
I'm sorry, but Modern C does not provide exact representations for 10 bit bytes
unless the underlying hardware supports 10 bit bytes. And the 10 bit byte Modern
C compilers do not provide representations for 8 bit bytes.
Your posts on this subject remind me of when I learned how to do data flow
analysis from Ullman and Hennessy. The algorithms looked great, and were
provably correct. I implemented them. They did not work - because real CPUs and
languages did not behave according to Ullman's mathematical models. Getting
things to work right required considerably more effort. The Dragon Book was not
terribly concerned with the dirty details of how things really work.
There's a huge difference between reading an academic paper about something and
getting it to work in the field, one you discount completely.
More information about the Digitalmars-d