3 ms·
Racket is much less approchable for people. I can't figure that mess out. Many people seem to find it difficult to endorse "get started and go" mentalities. The
by gravypod 10y ago
Racket is much less approchable for people. I can't figure that mess out. Many people seem to find it difficult to endorse "get started and go" mentalities. The reason for N language implementations in Racket is that many LISP programmers are big fans of Domain Specific Languages (DSL) and this is also something that is taught in SICP.
Edition 2 of SICP was reimplemented in Common Lisp [0] (more specifically ANSI Common Lisp). Common Lisp is to Racket/Scheme/JavaScript/Clojure as C is to Rust/Java/Python/C++. It isn't the only way to implement a language and no one will say it's the "best" when compaired to My Favorite Implementation (TM) but everything draws from it and everything influenced it at the same time. It's the common ground that everyone can hold a leg on and knowing it will be your Rosetta Stone.
One common implementation is CLISP which is a GNU package.
To find out how everything works it is recommended that you attempt to read through the UNIX man page on the operation of this program. You will better understand how to interface with the program then. If you've used python then you will instantly recognize the idea of the REPL. [1]
If you have a software development background then [2] is probably all you need to get started. If not, as I have mentioned, you can check out SICP [3] as the book is online for no cost on an MIT website. Reading through this, maybe even one chapter per day, and doing the exercises as the book tells you to will give you a solid understanding of the concepts.
[0] - https://en.wikipedia.org/wiki/Common_Lisp https://en.wikipedia.org/wiki/Common_Lisp
[1] - http://www.clisp.org/impnotes/clisp.html http://www.clisp.org/impnotes/clisp.html
[2] - https://en.wikipedia.org/wiki/Common_Lisp#Syntax https://en.wikipedia.org/wiki/Common_Lisp#Syntax
[3] - https://mitpress.mit.edu/sicp/full-text/book/book.html https://mitpress.mit.edu/sicp/full-text/book/book.html
- kazinator 10y agoCLISP is redistributed under the GPL, but isn't part of the GNU project. GNU project's Common Lisp implementation is a project called GCL: GNU Common Lisp, a descendant of Kyoto Common Lisp. Also, your analogy that Common Lisp to various Schemes and Clojure is like C to Java/Rust/Python is severely flawed in multiple ways.
- bogomipz 10y agoI am curious do you have a different suggestion for a LISP implementation for working through SICP other than CLISP or would you agree this is a good choice?