C Plus Plus Is Teh Suxx0r

· Generative Art, Satire

const I** const **don't const like const C++ const. constI use Lisp or JavaScript for my own work. I also use C, scheme and PHP occasionally. I have taught C and Java, and hacked Java and C++ professionally for years at a time. I have also done a lot of BASIC, Dylan, Objective-C, AppleScript and Python at one time or another.I can honestly say that C++ is the worst programming language I have ever used. Worse than Python, worse than AppleScript. There are a number of reasons for this:

_C++ is a horrible language. It's made more horrible by the fact that a lotof substandard programmers use it, to the point where it's much mucheasier to generate total and utter crap with it. Quite frankly, even ifthe choice of C were to do *nothing* but keep the C++ programmers out,that in itself would be a huge reason to use C.In other words: the choice of C is the only sane choice. I know MilesBader jokingly said "to piss you off", but it's actually true. I've cometo the conclusion that any programmer that would prefer the project to bein C++ over C is likely a programmer that I really *would* prefer to pissoff, so that he doesn't come and screw up any project I'm involved with.C++ leads to really really bad design choices. You invariably start usingthe "nice" library features of the language like STL and Boost and othertotal and utter crap, that may "help" you program, but causes:- infinite amounts of pain when they don't work (and anybody who tells methat STL and especially Boost are stable and portable is just so fullof BS that it's not even funny)- inefficient abstracted programming models where two years down the roadyou notice that some abstraction wasn't very efficient, but now allyour code depends on all the nice object models around it, and youcannot fix it without rewriting your app.In other words, the only way to do good, efficient, and system-level andportable C++ ends up to limit yourself to all the things that arebasically available in C. And limiting your project to C means that peopledon't screw that up, and also means that you get a lot of programmers thatdo actually understand low-level issues and don't screw things up with anyidiotic "object model" crap._

Technorati Tags: hacking