4 ms·
Any reason why they haven't moved to Clojure. For one, Clojure has all the Java libraries at it's disposal.
by abc_lisper 5y ago
Any reason why they haven't moved to Clojure. For one, Clojure has all the Java libraries at it's disposal.
- User23 5y agoClojure has many pleasant properties, but it’s painfully immature to a seasoned Lisp developer. That said, if I really wanted to use the JVM for business reasons, Clojure would be high on the list. Even so my gut instinct is ABCL. Edit: response to child: The most obvious thing is a lack of TCO. But there are plenty of other things like the limitations of a JVM based object system compared to the MOP. And then there’s the Lisp Machine heritage that shows through in forms like EVAl-WHEN. There’s the condition/restart system too. That’s just a few things off the top of my head. But in no way am I denigrating Clojure. It’s a good Lisp that meets important needs and I’d happily use it anytime it’s right tool.
- rfrey 5y agoAs an honest question from one who learned clojure but never CL, could you expand?
- mikelevins 5y agoI like Clojure okay, but it lacks the deep support for highly-interactive programming that I prefer. I've written fairly extensively about that subject in other posts and elsewhere. To be fair, that kind of support is hard to come by outside Common Lisp and Smalltalk. I miss Common Lisp when working in Clojure, but not vice versa. Clojurescript with figwheel is a pretty nice, pretty interactive way to develop web apps, though.
- sesm 5y agoI don’t think TCO is a big deal, Clojure has loop-recur when you need it
- lispm 5y agoThat's self recursion (Lisp has a low-level Go To as a building block). TCO is a bit more general. Any tail call then is just a kind of jump.
- spariev 5y agoActually they do use Clojure, at least they have open positions for Clojure Software Engineers. Also, I know that Vsevolod, the author of the article, is not with Grammarly anymore.
- p_l 5y agoDevelopment in Clojure is afaik noticeably different (or at least was in my experience) if only because Java quickly surfaces for example in backtraces. You also might simply not need Java libraries, so you lose considerable portion of clojure benefits.
- wglb 5y agoI think programs in Clojure will be measurably slower, which for some applications doesn't matter. Certainly there is a rich set of libraries and other resources available in Java.