3 ms·
Although removing s-expressions isn't necessarily critical -- see Dylan, Honu, sweet expressions, etc. -- I think removing macros means you no longer have a lis
by 6cxs2hd6 13y ago
Although removing s-expressions isn't necessarily critical -- see Dylan, Honu, sweet expressions, etc. -- I think removing macros means you no longer have a lisp.
- sjtgraham 13y agoRemoving homoiconicity means you no longer have a lisp.
- anaphor 13y agoI disagree, by that definition Racket is not a lisp. AST macros are enough imo.
- fsck--off 13y agoRacket isn't a Lisp. All of the Lisps have "Lisp" in their name, e.g MacLisp, Common Lisp, ZetaLisp, Interlisp, EuLisp, Elisp, etc. Look at the conversation between kragen and lispm here [1]. Of course you can almost always informally call various Scheme dialects and Clojure "Lisps" (I do it all the time) because they draw very heavily from Lisps. [1] https://news.ycombinator.com/item?id=6068732 https://news.ycombinator.com/item?id=6068732
- 6cxs2hd6 13y agoI said lisp not Lisp. I think it's meaningful to refer to things like Scheme, Racket, Arc, Clojure, Dylan, Honu et al as lowercase lisps. For example I believe those tick off all 9 items on pg's list: http://www.paulgraham.com/diff.html http://www.paulgraham.com/diff.html Disclaimer for language lawyers: Using lowercase lisp is not intended to infringe Lisp (R), a registered trademark of Sole Arbiter of What's a Lisp Corporation. ;)
- epsylon 13y agoCould you explain why Racket isn't homoiconic ?
- anaphor 13y agoIt doesn't use S-Expressions internally, it uses a different representation called syntax objects. http://docs.racket-lang.org/guide/stx-obj.html http://docs.racket-lang.org/guide/stx-obj.html
- aidenn0 13y agoC++ is arguably a lisp then