Hacker News new | ask | show | jobs
by chc 5718 days ago
Lisp is not really a language. It's a family of languages. That's why you can't find a standard implementation.

Clisp is one implementation of the Common Lisp language. Other Common Lisp implementations include SBCL and AllegroCL. Since no one party controls the Common Lisp language, none is standard.

Scheme is another Lisp language. It also isn't controlled by anyone, so it's just a sea of implementations. BUT — the closely related Racket language is centrally controlled and does have a standard implementation. In fact, that's pretty much the whole reason Racket diverged from Scheme — so that it could be the standard Racket instead of Scheme with a bunch of modifications.

The other popular Lisp these days is Clojure. Like Racket, it does have a central "creator," Rich Hickey, whose implementation is considered official.

1 comments

Interestingly Racket and Clojure were the last two languages I decided to pick from when I decided to start to learn lisp a few weeks ago. The impression I got from reading about Common Lisp on the 'net was that it was old, its libraries are hard to find, and when you find them they are poorly documented and unmaintained. And if you're not using emacs to write it, no one is going to help you. I've installed several versions of emacs on my computer... but decided in the end I didn't really want to learn lisp and emacs at the same time because it didn't seem fun anymore, just work.

At least there are more blogs about Clojure; and Racket is mature and well supported. (I also think Clojure code looks better than all the other lisps. Don't know why, yet.)

You can always try starting with Lispbox - http://www.gigamonkeys.com/lispbox/

Another option is to download Franz Allegro CL Express - http://www.franz.com/downloads/clp/survey and Franz' own emacs package - http://www.franz.com/emacs/ They also have nice tutorials up there.

Or Lispworks personal edition - http://www.lispworks.com/downloads/index.html

I just set up slime into my emacs (which I use all the time anyways) and hooked up Clozure CL to it - http://www.clozure.com/clozurecl.html

On the other hand you could try Scheme, particularly Racket (ex PLT Scheme) - http://racket-lang.org/ (IDE is really nice, but sometimes confusing for newbies.. for example "Which Scheme? And why?")

Maybe your best bet would be to start either with Lispbox and some Lisp book (like the one linked on Lispbox page, it's free) - or Racket Scheme and its IDE (DrScheme) and try following SICP from here http://ocw.mit.edu/courses/electrical-engineering-and-comput... and especially here: http://academicearth.org/courses/the-structure-and-interpret... I'd recommend Racket+SICP at first, both because of less hassle with tools instead of language at first and for my personal bias toward Scheme. Just found some pointers for SICP and DrScheme here - http://stackoverflow.com/questions/939582/which-language-in-...

The Racket IDE should pick a sensible default for the language and add a first-time only launch dialog.