Hacker News new | past | comments | ask | show | jobs | submit login

Lisp absolutely means Common Lisp, that was the whole point of Common Lisp. (Naggum rant on this: http://www.xach.com/naggum/articles/3224964049435643@naggum....) Certainly we can talk about the "Lisp Family", or "dialects within the Lisp Family" when things are close enough, and I disagree with Naggum in that I think it's not a totally useless thing to consider. But to me it's not all that useful either, since as far as I can tell the minimal thing to qualify membership to the family is to be s-exp based like [Common] Lisp, Clojure, or Scheme. I'd hesitate to call the FFP language as defined by Backus "Lisp", or even "a Lisp", however, even if a program looks like (+ :<4, 6, 8>). It's missing a lot of other things. So while Clojure, Scheme, and Lisp definitely seem closer to each other than to languages like Python or C that it might be sort of useful to group them into a family, it's a stretch to call them true dialects of each other. I can say the same things more or less with the same effort in different dialects, but how can I trivially talk Lisp conditions and restarts or Reader Macros or CLOS in Clojure or Scheme, let alone any of the other "dialects" out there? Those things aren't just "jargon" that can be interchanged or minimally expanded out, they are huge implementation details. You'd sell me more on the dialects thing if we were talking about Scheme as implemented by the Racket guys vs. Guile vs. al., or Common Lisp implemented by SBCL vs. Clozure vs. al., or Clojure as implemented on the JVM, CLR, or JavaScript runtime.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: