News for hackers. Stuff that matters.
Re:ISO C is increasingly moronic by api on Tuesday December 20, 2011 @03:59PM (#3375132)
Nothing good ever came from a committee.
Re:ISO C is increasingly moronic by zb on Tuesday December 20, 2011 @05:26PM (#3375476)
Actually I think C emerged from its original ANSI standardisation process in much better shape than when it went it. You don't see too much K&R C being written these days for good reason.
Re:ISO C is increasingly moronic by aidenn0 on Tuesday December 20, 2011 @08:38PM (#3376007)
Most of the K&R isms were already gone before C89, ANSI just standardized those. I learned C from a pre-ANSI book and it definitely wasn't that K&Rish
Re:ISO C is increasingly moronic by phkamp on Tuesday December 20, 2011 @05:47PM (#3375542)
You're probably right about that, ANSI did a couple of good things, but I'm not sure I think they came out in the black in the end.

ISO on the other hand, seems like a total disaster.

Re:ISO C is increasingly moronic by StephenFalken on Tuesday December 20, 2011 @08:48PM (#3376033)
It's interesting to note the bumpy road that lead to the final standardization of C as ANSI X3.159-1989, as documented on the following post:

http://groups.google.com/group/comp.lang.c/msg/991b9116ffa83...

Dennis Ritchie spend part of that time fighting against the introduction of several new features he felt were not the proper future of the language. Unfortunately, he had little to no involvement on the C99 standardization process. The final outcome was a butchered language. I'm sticking to C89/C90 on all my C development, no matter what.

"I was satisfied with the 1989/1990 ANSI/ISO standard. The new C99 standard is much bulkier, and though the committee has signaled that much of their time was spent in resisting feature-suggestions, there are still plenty of accepted ones to digest. I certainly don't desire additional ones, and the most obvious reaction is that I wish they had resisted more firmly." --dmr

Re:ISO C is increasingly moronic by JoshTriplett on Wednesday December 21, 2011 @05:40AM (#3377050)
The post you point at just talks at length about two features: const, which Dennis Ritchie liked but wanted changes to, and noalias, which he wanted to kill off. Const works exactly like he suggested; noalias became "restrict", which seems dead outside of a few standard library functions.

That doesn't seem to me like a pervasive sign of problems with C99. Personally, I find the C99 standard incredibly useful and I can hardly stand to write C code that can't rely on C99. I like having designated initializers. I like having a "bool" type. I like having structure literals, for use in arguments or return types. I like having the family of sized integer types, such as uint32_t and uint64_t. And I like having standardized versions of pre-existing features such as "long long", "inline", and variables declared in the middle of code.

Do you really despise all of those features?

Re:ISO C is increasingly moronic by jemfinch on Tuesday December 20, 2011 @04:06PM (#3375155)
The constitutional convention of 1787 seems to have done a pretty decent job.
Re:ISO C is increasingly moronic by phkamp on Tuesday December 20, 2011 @04:19PM (#3375224)
You mean the job where the first 10 ammendments were necessary after just two years ? :-)
Re:ISO C is increasingly moronic by derobert on Tuesday December 20, 2011 @04:57PM (#3375366)
Amendments 1–10 and 27 were products of the same Philadelphia Convention that produced the US Constitution, and were proposed along with it.

You could try Wikipedia: http://en.wikipedia.org/wiki/United_States_Bill_of_Rights#Ph...

Re:ISO C is increasingly moronic by jshen on Tuesday December 20, 2011 @05:21PM (#3375454)
Nothing you said negates his argument. Why didn't the committee ad them to the constitution itself when it was passed?
Re:ISO C is increasingly moronic by mbell on Tuesday December 20, 2011 @07:18PM (#3375811)
They didn't agree about the inclusion of the articles and they wanted to get the constitution signed and proposed to the states for ratification ASAP. Thus those that wanted to get the Bill of Rights in there were promised "it would be coming soon" which appeased them enough to "sign off " on the constitution and those that had some issue with the articles were happy that they weren't initially included. Keep in mind that the "Bill of Rights" originally had 12 articles, only 10 passed initially, 1 finally passed in 1992 and 1 is still outstanding.

Also consider that they Philadelphia Convention wasn't some magical aw-inspiring meeting of the minds as it is sometimes made out to be. Only 39 of 55 actually actually signed the constitution and several were so pissed off they just walked out. I'm sure lots of bargaining and negotiation was done and the 12 articles in the Bill of Rights was simply one of the bargaining chips.

Re:ISO C is increasingly moronic by jshen on Tuesday December 20, 2011 @07:52PM (#3375901)
Right, that's what phkamp was saying. That the committee was a messy process that produced an artifact that needed to be fixed right out the gate, and didn't get up to a decent standard for a long long time.
Re:ISO C is increasingly moronic by myhnaccount108 on Wednesday December 21, 2011 @05:48AM (#3377066)
Opponents of BofR claimed that was the broken part because it was redundant (and potentially dangerous) to enumerate rights not explicitly granted to the government. Also the built in amendment process allowed the document to adapt as the country evolved, while allowing the highest priority requirements to be met in the first iteration.
Re:ISO C is increasingly moronic by aliguori on Tuesday December 20, 2011 @05:14PM (#3375425)
Minus the 3/5ths compromise of course...

http://en.wikipedia.org/wiki/Three-Fifths_Compromise

Committees are all about compromise and compromises are usually a worse solution in everyone's eyes. I'm not saying C14 threads are as bad as slavery, but they are a compromise that I'm sure no one will prefer to their native thread library.

I'm a bit surprise that ISO is even attempting to do generic threads. Who is this really a problem for? We have oodles of libraries that provide cross platform thread libraries. I don't see why we need the C standard to specify one.