top | item 4569178

(no title)

luriel | 13 years ago

Many people are not looking for a "better C++", in the land of C++ it seems "better" means "more features", and some of us are not interested in more features, but in a better selection of fewer useful features.

See Rob Pike's essay on this very topic and the design of Go:

http://commandcenter.blogspot.nl/2012/06/less-is-exponential...

discuss

order

qznc|13 years ago

The goals of C++ are performance and abstraction and I do not know any language which beats it in both points.

I appreciate "small" languages, which can do a lot with a little core and abstraction mechanisms (Scheme,Smalltalk,...). However, for maximum performance, you need a good compiler, which understands and optimizes your abstractions. In the case of Lisp, whoever writes the macros is also responsible for optimizing them. Unfortunately, this requires application programmers to be also good in writing compilers.

C++ certainly has deficiencies, which cannot be fixed without completely breaking backwards compatibility. Rob Pike probably has them all included in the list you linked to. E.g. irregular syntax and header files.

In my opinion D has mostly fixed those conceptual issues. Unfortunately, D is not mature [0] and development is slow. While D is certainly not the final word in language design, I consider it the only serious competitor to C++.

[0] http://3d.benjamin-thaut.de/?p=20

zem|13 years ago

have you taken a look at D? it cleans up a lot of c++ warts, while not being any more kitchen-sinky.

batista|13 years ago

>Many people are not looking for a "better C++", in the land of C++ it seems "better" means "more features", and some of us are not interested in more features, but in a better selection of fewer useful features.

This is a knee jerk cliche reaction.

D is much better designed than C++.