3 ms·
Which remark do you consider bashing of Clojure?
by funcDropShadow 5y ago
Which remark do you consider bashing of Clojure?
- klibertp 5y ago"This is great, but too often I see people omit some of the obscure but critical features that make lisp uniquely wonderful. These include read macros like #. and backreferences, gensyms, and properly escaped symbol names." Clojure makes a point of having non-extensible reader. "For example, how does it help to remove backquote? One design changes the syntax of quote. Some systems disallow dotted lists. (I've seen all three of these.) What's the point? Implementers wave the banner of "simplicity", yet wedge in all kinds of weird implicit behaviors and extra evaluation rules." Not sure about backquote in Clojure, but the next sentence is probably about PicoLisp, which somewhat famously changes `quote` syntax to accept any number of expressions. Disallowing 'dotted lists' is probably also about Clojure, where the lists are not really lists as used in most other Lisps. The "banner of simplicity" can be a reference to "Simple made easy" (IIRC) by Rich Hickey. "Lately a surprising amount of FUD has been spread about proper tail recursion. [...]" Not sure here, but out of major lisps Common Lisp doesn't mandate TCO, but at least SBCL does it anyway; while Scheme has TCO in the standard. Clojure doesn't have it, which leads to existence of `recur` (IIRC) and trampolining in user code. "Bashing" may be too strong a word, even when qualified with "subtle". It might even not be what the author intended at all, it's just what popped up in my head when reading :)