Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

How to tell if a language is shit

Name: Anonymous 2012-07-29 17:48

The best way to determine how much a language sucks is by counting how many ``harmful'' parts of the language there are. These are the warts and duplicate features that programmers tell others to avoid. They're usually there for backwards compatibility or to attract programmers from another language. For example, C++ programmers want you to use new, std::vector and functors instead of malloc, arrays and function pointers from C. Why do you need three (malloc/free, new/delete, new[]/delete[]) incompatible allocators and deallocators? Why do you need at least five (C local/static array, malloc, new[], std::vector, std::array) different ways to make contiguous arrays? Why do you need two incompatible ways to pass functions as arguments? Why do C++11 lambdas have unique types? A good language has only one way to make an array, maybe two for expandable and fixed size or heap and stack. A good language has only one way to allocate heap storage for each type of heap (manual/region/GC heap are good distinctions, C heap/C++ heap is not). A good language treats all functions with the same return type and parameter types the same. C++ is shit.

Name: Cudder !MhMRSATORI!fR8duoqGZdD/iE5 2012-07-30 5:22

>>15
operator delete shouldn't throw an exception. The standard says throwing an exception in a destructor is also undefined.

considering the frequency of errors even experienced C++ programmers
I wouldn't call those programmers "experienced" if they can't understand something simple like that. At least, I don't consider myself particularly expert with C++, but I can already write what the standard new/delete operators do, from memory. Really basic stuff.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List