Somewhat related, an indie company managed to get a fighting game out on PSN and XBLA. It just got an update on PS3, but it can't get updated for Xbox because the patch is bigger than 4MB. [1]
Keep in mind, these are free updates that fix bugs and stability issues, not paid DLC. Even so, patching is really, really expensive. [2]
> ...I consider it a pretty good set of rules for safety critical and performance critical code. If you do embedded systems programming, you should consider it. Caveat: I had a hand in the formulation of these rules, so you could consider me biased...
I'm not C++ savvy, but I know from reading Google's C++ style guide that they also disable exceptions. The guide leaves it at that and doesn't say anything more about how to deal with errors. Does anyone here know how these big Google C++ codebases handle errors instead?
I'm surprised they think developers would be interested in this. Having worked with Dell in IT, you couldn't pay me to use anything they put their name on. Dell have a bad reputation in both hardware and peopleware, and it's well deserved.
There are some Good Parts to C99/C11, most of them adopted from Unix and Plan 9. Not surprisingly, most of the bad parts are all inventions.
Read the link to dmr's comment again. His argument wasn't so much that noalias was specified incorrectly, it was that the whole idea of adding any kind of alias specifier to the language is against the spirit of C. I agree, and apparently so did the C++ committee. If you want to write FORTRAN, write a FORTRAN spec. Leave C alone.
Unlike ICC, MinGW's gcc.exe is not a drop in replacement for cl.exe. It's a separate compilation environment. The headers are different and often out of date compared to the Windows SDK. Microsoft extensions are not supported so it chokes on newer APIs like DirectX 11.
If you are a Mac or Linux weenie who just wants to port something over to Windows sure, no problem, use MinGW. But good luck getting any Visual Studio devs to rely on what is, for all intents and purposes, a second rate Win32 toolchain.
Good for Microsoft. If they think something is standardized garbage then they shouldn't have to use it.
C99 and C11 look like mutants compared to C89. Too many bad design decisions made by a group of people who weren't involved with the initial standardization. They even did the very thing the guy who _invented_ the language explicitly told their predecessors in no uncertain terms not to do, and reintroduced noalias pointers into the language [1].
> The C99 standard is interesting because it was created at a time when a lot of people on the previous committee went away and did other things. And it was a smaller group that came over who were interested in a special-purpose area, and so it ended up having a lot of things that were not of general-purpose interest.
Sutter's comment seems spot on about the apparent departure of a lot of the original authors. C99 seems to have been designed by a group of people who's overriding motivation was FORTRAN envy.
Really, how many people were screaming for built-in complex types, type-generic math, or variable-length arrays? noalias even made it's way back into the language.
Take the Good Parts of C99: BCPL comments, long long, and <stdint.h>, and you've basically got MSVC's C compiler.
Good Parts of C11? Anonymous structs and unions. Plan 9 FTW.
> What part of that process requires UTF-16? JavaScript doesn't require UTF-16; it just requires Unicode. You could use UTF-8 in your JavaScript implementation as well.
Actually, JavaScript _does_ require UTF-16. From the ES5.1 spec:
> A conforming implementation of this Standard shall interpret characters in conformance with the Unicode
Standard, Version 3.0 or later and ISO/IEC 10646-1 with either UCS-2 or UTF-16 as the adopted encoding
form, implementation level 3. If the adopted ISO/IEC 10646-1 subset is not otherwise specified, it is presumed
to be the BMP subset, collection 300. If the adopted encoding form is not otherwise specified, it presumed to
be the UTF-16 encoding form.
Editor Domenic Denicola's website