3 ms·
> You can absolutely learn the syntax of C in an afternoon, or a few days at worst That depends on what you mean by "learn". Learn it well enough to make some
by zbentley 8y ago
> You can absolutely learn the syntax of C in an afternoon, or a few days at worst
That depends on what you mean by "learn".
Learn it well enough to make something that works for you, on your architecture, with your toolchain? Sure.
Learn it well enough to know which combinations of the syntax you (thought you fully) learned trigger undefined and wildly variable behavior in the wild or when run with other libraries/build environments? Hell no. And bugs caused by that stuff are distressingly common.
That's not a "system specific gotcha". It's a huge area of skill-requiring behavior that arises directly within the core syntax of the language.
Saying "you can learn C in a weekend" is like saying "you can learn to drive a car in a weekend" in reference to learning how to maneuver a car alone in a big empty parking lot. Technically true, but it'll leave you woefully unprepared for operating that car the way almost everyone wants to: around other cars, in more complicated contexts, subject to many more unpredictable factors (other people).
- chungy 8y ago"Learn C in a weekend" (or afternoon) is akin to getting accustomed to a new model of car, _with prior driving experience_. Each car has its own quirks, each programming language has its quirks. Learning C from the background of already knowing how to program is like driving a new Ford Focus off the lot and getting used to it. Learning C++, on the other hand... is expecting you to pilot a jumbo jet after your only experience was the Ford Focus.
- kqr 8y ago> "Learn C in a weekend" (or afternoon) is akin to getting accustomed to a new model of car, _with prior driving experience_. ...in an empty parking lot, sure. C brings a whole host of old issues to the table that you simply do not get to experience in other languages. C is deceptively easy to think you know, but I have yet to see evidence of someone actually using it responsibly.