I had decided to learn Scheme, but discovered that it lacks decent libraries, so i decided to learn Common-Lisp instead. It seems less elegant (more complicated) than Scheme, so, considering the risk of brain damage if I continue, am I doing it wrong or should i proceed?
Retarded. This all goes back to Dijkstra's little IF U LEARN BASIC U R MENTALY RETARDED FOREVER AND WILL NEVER PROGRAM COMPUTERS PROPERLY diatribe. You'll be fine.
Name:
Anonymous2011-07-18 21:37
By brain damage, I was referring to the fact that, because the languages are so similar, but still different, it could be troublesome to learn one after getting used to the other.
Name:
Anonymous2011-07-18 21:59
>>5
Scheme will help you learn Common Lisp more than Common Lisp will help you learn Scheme, I think.
Name:
Anonymous2011-07-18 22:07
>>1
I would recommend Racket personally (i.e. PLT-Scheme.) It's basically a Scheme but with good libraries, and it's not CL so naming conventions and such are a lot more consistent. It basically feels like a modern Lisp.
Name:
Anonymous2011-07-18 22:17
>>7
I'm using Guile, which comes with my distribution. Is it much worse than Racket?
Scheme will seem rather trivial if you already know Common Lisp. There is no problem in learning one or the other first. If you learn Scheme, you may be more ``pure'' as to what the language should contain (less), while if you learn CL, you'll likely prefer more features and as much user extension as possible (not that you can't do the same in Scheme). Reading R5RS shouldn't take you more than a few hours if you already know CL. Learning CL would probably take a week or more (PCL, HyperSpec, AMOP, ...), as long as you actually have a good implementation (SBCL, ClozureCL, ...) and environment (Emacs+SLIME+Paredit+Redshank+...?). I think the danger for some might be that they would dislike CL when coming from Scheme as it's more complex. Personally I read SICP (partially), then I learned CL (fully), and then I finished SICP and the Scheme specs with much ease. You may use either interchangably depending on your needs.