Linked by Thom Holwerda on Mon 13th Aug 2007 17:57 UTC
General Development "A good programming language is far more than a simple collection of features. My ideal is to provide a set of facilities that smoothly work together to support design and programming styles of a generality beyond my imagination. Here, I briefly outline rules of thumb (guidelines, principles) that are being applied in the design of C++0x. Then, I present the state of the standards process (we are aiming for C++09) and give examples of a few of the proposals such as concepts, generalized initialization, being considered in the ISO C++ standards committee. Since there are far more proposals than could be presented in an hour, I'll take questions." Dr. Bjarne Stroustrup is the original designer and implementer of the C++ Programming Language.
Thread beginning with comment 263137
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: C: Esperanto
by TheMonoTone on Mon 13th Aug 2007 19:33 UTC in reply to "C: Esperanto"
Member since:

You realize of course that the reason your operating system isn't dog slow is because they *are* using a very close to asm-like language, aka C and some use C++.

Just because C/C++ don't hold your hand doesn't mean they don't have a use. They are system level languages, and I have to think of the fantastic duo that created it and Unix everytime I have to write embedded software. ASM is a pain in the ass, C is like a better ASM without the hassle of remembering all the machine specifics, and C++ is like a better C, adding in some great features that save time if you know how to use them. Thinking about it in those terms, it makes perfect sense why they exist and why they are so popular. I have no doubt more than half the programmers out there despise these languages because they never understood how a computer really worked in the first place, or even if they did, despised the effort required to write proper C/C++ programs. Hell C++ makes it even easier if you follow a few simple paradigms and common practices. Of course your not going to learn it over night in some C++ 24hrs book which teaches a glorified C as C++.

Reply Parent Score: 6

RE[2]: C: Esperanto
by postmodern on Mon 13th Aug 2007 19:45 in reply to "RE: C: Esperanto"
postmodern Member since:

The point to this whole article is that C++ could be pushed further, to be a even better OOP/system-level language. So why not try and improve it, or learn why C++ is a dead-end design-wise?

Reply Parent Score: 2

RE[2]: C: Esperanto
by Michael on Mon 13th Aug 2007 20:14 in reply to "RE: C: Esperanto"
Michael Member since:


Most software isn't system software and doesn't need all that low-level stuff. Yet C/C++ are the default languages of programming. Office software, web browsers, games etc. are all written in C++. Why? Stability and cost of development are much more important than perfomance, even in games. C++ is used because it's widely known, which thus reduces the cost of development, not because it's an inherently good language for software development. It allows you to make mistakes most people have absolutely no need to make and the result is not that the only programmer is a good programmer, but rather that there are an awful lot of very bad programs in the wild. Crashes and memory leaks are as much the fault of the choice of language as they are the fault of the programmer. There are plenty of other languages that are just as fast for most things. C/C++ do indeed have their place, it's just that that place isn't everywhere.


Reply Parent Score: 2

RE[3]: C: Esperanto
by leos on Mon 13th Aug 2007 20:31 in reply to "RE[2]: C: Esperanto"
leos Member since:

Stability and cost of development are much more important than perfomance, even in games.

Performance is not important until it's a problem. Games are definitely still pushing the limits of hardware and performance is very important. Even a lot of complex desktop apps are not so fast that a move to a higher level language wouldn't hurt them. Imagine Photoshop coded in Java. Or OpenOffice. Openoffice is already slow enough as it is, mostly due to years of cruft. Add the overhead of a higher level language on top of that and you've got serious problems. Just look at Eclipse. Complex applications are possible in Java/C#/Whatever but they are also very resource intensive.
Anyway, C++ is fine with the right toolkit. I almost never have to worry about managing memory in my C++/Qt apps. Almost everything is done on the stack anyway and passed around with references or copy-on-write semantics. It's just traditionally C++ tools were crap, or used C libraries for things like string handling.

Reply Parent Score: 6

RE[3]: C: Esperanto
by TheMonoTone on Mon 13th Aug 2007 21:52 in reply to "RE[2]: C: Esperanto"
TheMonoTone Member since:

I'd rather not play games that are dog slow either, thank you very much.

Actually, performance is pretty key in most desktop applications. No one likes waiting. As I said before as well, C++ makes it fairly easy if you use it the right way, aka RAII and some other common practices.

Sure, no one likes segfaults, but once the program works properly speed is usually important. People still rag on OO.o over MS Office because of the speed, though not a language specific issue it does point out performance is actually a desired attribute of most programs; even those crufty old office type programs.

Its a real competative edge when your program is significantly faster, and the language choice can matter.

Think of any sort of image, video, or audio processing and editing. Think about movie playback (especially the H264 codec). Think about your desktop in general.

Now think about all of that 4x slower and using up 4x as much ram. Suddenly all the nice new hardware isn't worth a damn thing. Now lets say you have 4 programs running, all 4x slower, taking up 4x as much memory. Your computer isn't doing 4x more work, no, its doing 16x more than it would've been doin had some devs not gone the lazy way out.

Features are not free.

Sometimes its an acceptable loss, most of the time its not. My desktop (brand spankin new) would quite literally be unusable if everything were written that way.

Reply Parent Score: 3

RE[2]: C: Esperanto
by Auxx on Tue 14th Aug 2007 06:25 in reply to "RE: C: Esperanto"
Auxx Member since:

ASM is NOT a pain in ass. And OSes does not need to be written in C/C++ to be fast - there are some languages which are better/easier/safer and compilers for them do generate a very good binaries. Sometimes even better then C-ones.

Reply Parent Score: 2

RE[3]: C: Esperanto
by agentj on Tue 14th Aug 2007 07:41 in reply to "RE[2]: C: Esperanto"
agentj Member since:

So you can enlighten us and show HIGH QUALITY OSes written in those "some languages which are better/easier/safer" ?

Reply Parent Score: 1