in reply to New Year's Resolution: learn another language
Learning C will teach you how computers work, how awesome dynamic languages are, and why Lisp compilers are usually written in Lisp. C is the best assembly language ever. It's a total pain in the ass for anything sizable, but once you grok C, you have a good sense about where every bit and byte is going in all languages. C++ adds some higher-level features to C, but still requires a lot of hand-holding to get from point A to point B. If you're not planning to use either language extensively and just want to see where it takes you, I'd recommend C. The language features in C++ which are absent from C (object orientation, template programming, generic functions, overloading, etc) are learned more easily from a language with more forgiving syntax.
Lisp and C have both aged very well, respectively 50 and 35 years old. I'd say there's more to learn at these opposite ends of the spectrum than in between, if you're a code tourist. Most people who write actual software for actual purposes aim for a language somewhere in the middle.
|
|---|