Live data from Hacker News

CL or Scheme?

news.ycombinator.com

21–30 of 47 posts

Re: CL or Scheme?

#21

I'd say Common Lisp is the superior choice. In terms of the availability of support libraries and what not, you'll find it easier with Common Lisp. Quicklisp would be the most recent (and awesome) tool that comes to mind. In terms of the language itself, it's just more complete to me. LET and LET* have very different uses, and while ugly, LABELS has helped me quite a fair bit, especially in porting over some recursiv…

LOOP is awesome, probably my favorite feature of Common Lisp after CLOS.

Re: CL or Scheme?

#22
post #2

Racket is very easy to get going with, you just install it and use the IDE, which gives you the text editor/code area and REPL together like emacs/slime. Scheme is a smaller language. For example, there is no flet/labels, you just use (define) for nested functions. It's a good way to get going with a Lisp and see if you want to take on a heavier language like CL or Clojure.

Isn't letrec (Scheme) and labels (CL) used for the same purpose?

Re: CL or Scheme?

#23
I had the same issues starting CL. I think which LISP you pick is less important in the long run, rather than getting into the mode of writing functional programs. At some level, writing CL and writing Erlang are not that different experiences, to me at least. I know this sounds like abstract advice, but this is going to be a long journey anyway, so the most important thing is just to start it. Get Graham's ANSI Common Lisp book, get SLIME going and write something self-contained, like a basic matrix library. Worry about libraries later.

Re: CL or Scheme?

#24
Go for Clojure. It's a modernized common-lisp with access to the wealth of Java libraries. There are resources online, and you should be able to get up and running in a matter of minutes.

Re: CL or Scheme?

#25
Scheme R6RS: LET, LET* , LETREC, LETREC* , ...

I guess you have to learn those. Once you understand what the * means, you can easily see the difference between any construct with and without * .

It's basically the question whether bindings are done in parallel or sequentially nested. That topic should be described in a beginners book when learning some Lisp dialect.

Re: CL or Scheme?

#27
post #24

Go for Clojure. It's a modernized common-lisp with access to the wealth of Java libraries. There are resources online, and you should be able to get up and running in a matter of minutes.

I love clojure, but to be fair it took me a lot longer than that to get up and running, specially considering that I had no idea where to put the dependencies and how to compile things.

Re: CL or Scheme?

#28

newLISP is a scripting language with a Lisp-like syntax. It's designed to be a Lisp-flavoured alternative to Perl or PHP or AppleScript. The emphasis is on staying small (250Kb) and easy to install, learn, and use. As a non-programmer I'm not clever enough to learn CL or Clojure, but I found newLISP pretty easy to learn and use for day-to-day scripting tasks and CGI work. It's based on the ideas of Lisp, rather than…

If anyone's considering picking up newLISP, be advised they made some widely criticized design decisions (such as omitting lexical scope, closures, pass by reference, and GC) intended to speed up the interpreter. Last I heard, they don't plan on having a compiler. http://arclanguage.org/item?id=2911

omitting lexical scope, closures, pass by reference, and GC

None of those decisions were made for performance reasons, but because the creator of newLisp had no idea how to do them (lexical scope and call by reference were initially performance hacks, and actually make programs faster and/or smaller.)

A better name for the language would have been newBASIC, but even Basic is garbage collected. People who intend to use newLisp really need not suffer the parentheses. The language exists in familiar form as QBasic.

Re: CL or Scheme?

#29
Learn both, you will eventually. Most Lispers know CL and Scheme, and most are competent in other languages as well.

I would say devour everything you can lay your hands on; you wont be able to do much in computing unless you're competent in at least 4-6 languages, with a read-only knowledge of another 10 or so.

It's not languages that matter (usually) rather the computing models, development styles, and programming paradigms:

http://en.wikipedia.org/wiki/Comparison_of_programming_parad...

Re: CL or Scheme?

#30

First of all both Common Lisp and Scheme are excellent languages with impressive implementations to choose between. Furthermore if you learn one of them, you'll be able to learn the other one in no time. Instead of comparing languages, I'd suggest you pick between implementations. This suggestion might seem odd, but the Scheme standard (R*RS) is very minimal, which imply that all major Scheme implementations contain…

"After all, a picture is worth five hundred “hello world”s."

Thanks for the link to Racket tutorial.

Post reply on HN