3 ms·
Let's see: - Insists on every expression being (wrapped (in parenthesis)) - Uses polish prefix notation - Profound belief that recursion is more intuitive th
by speed_spread 5y ago
Let's see:
- Insists on every expression being (wrapped (in parenthesis))
- Uses polish prefix notation
- Profound belief that recursion is more intuitive than loops
- Macros everywhere, because code is data, so why not?
- Whole language built from a very small set of axioms
- REPL-based workflow
QED Clojure is _a_ Lisp.
(FWIW I'm learning Racket right now)
- jhgb 5y agoLisp: "List processing". Clojure doesn't even have cons cells... A Lisp without cons cells is like a C derivative without pointers...is it really C at that point? I'd also question the "profound belief that recursion is more intuitive than loops" since Lisp supports loops extremely well -- better than most languages, since you can build up your own iterative constructs using tagbody. And Clojure doesn't even have proper tail calls, so I doubt that Clojure actually believes in recursion.
- speed_spread 5y agoClojure doesn't have tail calls because they should be implemented at the JVM level to be effective, a feature which has been on the back burner for ever because no other languages would use them.
- lispm 5y agoProgramming languages on top of the JVM would not use that? Who said that?