Should I learn Scheme or Common Lisp?
Common Lisp is an ANSI standard and almost an industry standard.
So I should learn it.
Not quite. It has been around for decades.
That's a long time.
When it comes to the IT industry, that's forever. Many programming languages and platforms have come and gone in a few years, and LISP goes back decades.
So you think I should not learn it.
Scheme has a lot going for it.
It's just a dialect of LISP. I heard you should learn Scheme to get good as SICP.
Actually SICP is rather defunct. Scheme is a good way to learn functional programming, though.
I've heard the same said of Haskell.
Scheme is cleaner than Lisp, but it is smaller.
Scheme has first class continuations, though. Common Lisp is sometimes called ugly, but it is powerful.
Scheme is somewhat simple, compared to Common Lisp.
Common Lisp is complex, and it is harder to learn. But they say Scheme is purely functional.
That gets said of a lot of programming languages, especially anyone saying their language is more pure than the others.
Scheme uses recursion a lot more than Lisp, but Scheme lets you link into C libraries. I just wonder if the complications are worth the difficulty of learning it.
If you just change the function names, most Lisp programs can be converted to one or the other. And that's assuming you don't want to use conversion programs.
Or I could just learn Clojure.
Just learn Scheme. It has a bigger user base and more implementations than Common Lisp these days.
Or I could learn CL.
That is Common Lisp, and that's the version that's been around for fifty years in one form or another.
So you think I should learn the new kid on the block.
This isn't a scheme to go with the newest and hottest programming language; that's Ruby on Rails.