7 ms·
> C++03 is Turing-complete thank god for that. and also thank god that it is not a proprietary language/platform. eg., Apple otherwise we would be mandated to
by uwagar 5y ago
> C++03 is Turing-complete
thank god for that. and also thank god that it is not a proprietary language/platform. eg., Apple otherwise we would be mandated to write in the latest C++.
>That you have failed to learn to understand those reasons is not a fault in the >Standard. Blaming your own failure to to learn on the committee does not fool >anybody
what you call as my failure to learn is not remotely unique to me. many others more eminent and eloquent than me (and you too) have said more unkind things about C++, least being the phrase 'cognitive load'.
the 'trouble' with software is it its impossible to leave it alone. an 'update or perish' sword hangs above it. and C++ has swallowed the bait totally. it has competed with the joneses all the time: oh Java has garbage collection, why cant C++ have that too?..oh well cant cos...our users write imperative, sequence critical software that we cant have unpredictable, behind the back GC...so hah smartpointer, nullpointer kludges. oh LISP has lovely lambdas, why C++ has no lambdas?....well we give u lambdas but please close ur eyes to that horror-syntax; hey we can give static const variables values in the struct/class declaration, why not other variables?...sure that isnt a big problem! and the horror of all...C++ so proud of be a type-safe language yet modern programming is all about type-free so hah lets give u auto! what if i used auto as a var name in my code. tough luck. gotta change it dumbo. u are a bad programmer to make a variable name with just 4 letters.
C++ is so thorny, every symbol impregnated with meaning. walking on egg-shells, no wonder they call it 'cognitive load'.
- kazinator 5y agoMore like, Wirth's Pascal from 1970 has broken, downward-funarg only local functions? So does GNU C. Why can't C++ have some similarly lame local functions? And then make them anonymous like lambda? Only we can't introduce a lambda keyword. I called static's agent, but evidently static is tied up playing five roles already. I know, let's use the array brackets: they have not had a good diddling.
- kazinator 5y ago> what if i used auto as a var name in my code Then you had a syntax error. This is a historic keyword that played a useful role in Dennis Ritchie's B and NB languages, predecessor to C. It was retained as a reserved keyword in C, and into C++. The use of auto in relation to type inference in modern C++ is a repurposing of the existing useless keyword that has always been there.
- uwagar 5y agocool thanks, my bad. but i like to see the types im working with. auto like another poster has said though makes it readable kinda hides the type which idiomatically / stylistically i'm not comfortable with.
- ncmncm 5y agoArguments from ignorance always fall on their own sword. Every argument you can cobble together against learning the modern language applies as much to C++03, or '98, or, indeed, C itself. And to programming at all. Ultimately, though, it all amounts to laziness. So the final position is to stop writing any code, and leave the work to those willing to do the work.
- uwagar 5y agothe work is not about the number of programming language features used. its about imagination, addressing a users's need etc. i'm done with learning further in C++. C++03 is enough for my purposes. for other features of C++, id use a scripting language integrated into my C++ app say Lisp, TCL, Python or Lua, a lot cleaner altho a bit slower.
- ncmncm 5y agoYes, it would be better for you to write in those other languages than to continue producing crappy C++ code that others must then maintain at extra expense.
- uwagar 5y agowow, bro i dont remember peeing into your cornflakes this morning :) u know nothing about my work and i dont have to prove it to you. go sell your c++xx (even this naming convention is ugly) to linus. u will get a warm reception :)