Reg Braithwaite was writing not long ago about how we can be the biggest obstacle to our own growth. It made me realize how I've dropped things that I was once a staunch supporter of
( Read more... )
C is dying, IMHO, especially as C++ is almost perfectly a superset (there's a few things that you might still need C for if you're doing something like XIP on some embedded platform, but the next version of C++ should fix this and make it entirely redundant).
If you count web applications, JavaScript is quite big, and the server-side is often scripted as well. There are things like PyPy for Python, and some applications either have big chunks of scripting that you don't really see (big games are a notable example). The client that BitTorrent.com makes is all Python, if I'm not mistaken, and it's pretty hard to tell.
What I am claiming, though, is this: if you take a non-trivial C application, rename all the .c to .cc, fix the incompatibilities (if any, things like variables named "class", for example, but by design, there should be very few), and you'll have a ton of warnings that are helpful and will make the program better.
That strategy alone made me look like a genius on a few occasions at the job I had in France, getting me a few "how did you catch that?!?" puzzled looks (oh, the subtlety of confusing two enums of differing types!). ;-)
And the GNOME people are often seen gasping at straws, with things like Python and Mono. I think there's quite a few of their people who know it too, deep down...
For those time critical applications you talk about, usually the C++ compiler will compile the C code to just about the same as the C compiler would have done. What people often forget is that it's not because you're in C++ that you suddenly have to start using classes, templates and exceptions (although if I don't have to implement another bloody linked list in my life, that'd be fine by me!). C++ is very much "pay for what you use", so if you don't use a feature, you don't pay for it.
If your platform doesn't have a C++ compiler, well, that's pretty sad, I suppose. Hmm, their source code is available, due to GCC being GPL... I wonder how hard it would be to wire their code generator to a more capable GCC (consider that GCC translates code to an intermediate language, and that adding targets is separate from adding front-ends)...
Stackless Python is pretty damned sweet, that's for sure. :-)
Well, really, if the compiler's under the GPL... But hey, you probably have better things to do with your time than splice in a backend for their wacky platform into a more sensible compiler. ;-)
(The comment has been removed)
If you count web applications, JavaScript is quite big, and the server-side is often scripted as well. There are things like PyPy for Python, and some applications either have big chunks of scripting that you don't really see (big games are a notable example). The client that BitTorrent.com makes is all Python, if I'm not mistaken, and it's pretty hard to tell.
Reply
*shrugs*
Reply
What I am claiming, though, is this: if you take a non-trivial C application, rename all the .c to .cc, fix the incompatibilities (if any, things like variables named "class", for example, but by design, there should be very few), and you'll have a ton of warnings that are helpful and will make the program better.
That strategy alone made me look like a genius on a few occasions at the job I had in France, getting me a few "how did you catch that?!?" puzzled looks (oh, the subtlety of confusing two enums of differing types!). ;-)
And the GNOME people are often seen gasping at straws, with things like Python and Mono. I think there's quite a few of their people who know it too, deep down...
Reply
(The comment has been removed)
If your platform doesn't have a C++ compiler, well, that's pretty sad, I suppose. Hmm, their source code is available, due to GCC being GPL... I wonder how hard it would be to wire their code generator to a more capable GCC (consider that GCC translates code to an intermediate language, and that adding targets is separate from adding front-ends)...
Stackless Python is pretty damned sweet, that's for sure. :-)
Reply
(The comment has been removed)
Reply
Leave a comment