On Mon, Nov 04, 2013 at 08:57:12PM +0400, Alexander S. wrote: > if something was invented in the era of insufficient computing power, > it does make it more clunky to use.
True. C's dynamic memory management is proof of that. > Being old isn't what makes C old; Yes it does! But it doesn't make C bad. > the "1001 C Gotcha" lists are about what makes it bad. Apparently, the existence of such lists is the sign of a good programming language, because they don't exist for languages that don't allow enough leeway to do much wrong - so are unusable - or that no-one uses long enough to find pitfalls - so are evidently unusable. > The ugly hacks > like longjmp and varargs make it bad. longjmp() is kinda hacky, granted (for instance, setjmp() can only be used portably in a small number of contexts), but varargs? What's bad bout them? > C++ would be a much more decent > language if it didn't build on C syntax. > C++ is broken in about every way, and it all comes back to exactly this point. C is simply a very bad language to base OOP on. But, to be fair, C++ managed to fuck up magnificently in its own right (Overcomplex language spec, fucking with C programmers by removing the implicit conversion from void* to every other pointer and vice versa, lack of GC, making it hard to use a GC,...) Ciao, Markus