3 ms·
I agree that Clojure is continuing to rapidly gain mind share – among long-time Lispers, relative newcomers to programming, and also seasoned "curly bracers" th
by michaelsbradley 12y ago
I agree that Clojure is continuing to rapidly gain mind share – among long-time Lispers, relative newcomers to programming, and also seasoned "curly bracers" that a few years ago never thought they'd see a day when Lisp would make it into mainstream dev shops. Personally, I like it a lot and use it on a daily basis. The excitement around it is in no small part due to the insightfulness and ongoing hard work of Rich Hickey[1], his close collaborators at Cognitect[2], and some amazingly dedicated community talent (e.g. Philip Hagelberg[3]). Not to be overlooked is the brilliant decision to have it be a "hosted language" that interoperates with non-Clojure code on the JVM with little to no hassle – that opens a lot of doors, better believe it!
That being said, I attended RacketCon 2014[4] last Saturday and was blown away by the work going on in that community. Michael Fogus[5], a well-known name in the Clojure community, even gave the keynote[6]. The language's creator, Prof. Matthias Felleisen[7], and his grad students have been doing truly cutting-edge work over the last 18+ years (what became Racket was "conceived" at Rice University in Fall 1995). It's a fair question, though, whether the Racket team even wants the language to "make it big," i.e. along the lines of Clojure's rapid rise in popularity. I got the impression they have mixed feelings about that prospect, and those concerns have certainly shaped (and will shape) their marketing of Racket.
My thought is that if, in the next couple of years, they are able to achieve a really good compile-to-JS story (some work has been done already[8]) and a solid JVM-hosted implementation, then they may get a bunch of spill-over from the Clojure community without even trying to "steal sheep". There are some tremendously powerful language-level facilities already built into Racket that will likely not be implemented in Clojure any time in the foreseeable future, e.g. delimited continuations[9]. Also, the Racket team seems to have the right mind about learning from other languages, e.g. picking up some of the popular idioms from Clojure.
So, all in all, I think Lisp's legacy is far from definitive and it will be truly exciting to see what comes out of the Clojure and Racket camps over the next 5 years or so!
[1] https://twitter.com/richhickey https://twitter.com/richhickey
[2] http://cognitect.com/ http://cognitect.com/
[3] https://github.com/technomancy/ https://github.com/technomancy/
[4] http://con.racket-lang.org/ http://con.racket-lang.org/
[5] http://blog.fogus.me/ http://blog.fogus.me/
[6] https://www.youtube.com/watch?v=oe2tK5Lxybc https://www.youtube.com/watch?v=oe2tK5Lxybc
[7] http://en.wikipedia.org/wiki/Matthias_Felleisen http://en.wikipedia.org/wiki/Matthias_Felleisen
[8] https://github.com/dyoo/whalesong https://github.com/dyoo/whalesong
[9] http://docs.racket-lang.org/guide/conts.html http://docs.racket-lang.org/guide/conts.html