Live data from Hacker News

Is Clojure dying, and what has Ruby got to do with it?

lambdaisland.com

251–260 of 261 posts

Re: Is Clojure dying, and what has Ruby got to do with it?

#251

Earlier quoted context omitted.

For Lisp, parentheses are a big plus. They allow the following advantages: TL;DR: Once you start programming in Lisp for long enough, you end up loving and embracing the parentheses. 0. They allow for an extremely simple syntax, which in turn allows the source code to easily manipulate source code. No simple syntax, no really easy way to write macros. And macros are one of the most essential keys to Lisp's power. You…

This is more an emotional response to me than it is functional or logical one since you can apply all of these points to any other language.

It's not emotional, no. After just a few months of using Lisps it feels like parentheses bring some structure and order. In non-lispy languages things feel "all over the places" - there you do have to deal with punctuation - not just parens but: semicolons, dots, commas, brackets, curlies, indentation.

Programming in a Lisp is like writing a prose. Your brain is occupied with ideas, you just need to type them down. You don't need to think about structure (until later), it's a flow - you're looking for right words (functions), you can immediately try them out in the REPL, pretty much like a writer would review usage of a word in a thesaurus or a dictionary.

But to be fair I met a few people who claimed that even after months of using a Lisp, they just couldn't get the parentheses. I dunno, guess some people's brains maybe just not suited. You can call it dyslisplexia or whatever.

Re: Is Clojure dying, and what has Ruby got to do with it?

#252

Earlier quoted context omitted.

Rails was definitely responsible for Ruby going mainstream, without it, it would slide below Python. More than that: I think that combination of TextMate and Rails brought a huge number of web devs from Windows to MacOS as well. I remember around maybe 2005/6 people were switching from Intel based Windows to, at that time, PowerPC based Macs (transition to Intel was about to happen) just to use TextMate and Rails - i…

It has always been a pain to develop with Ruby on Windows, especially if targeting a Linux server. Gems that don't build on Windows, little help because almost everbody is on a Mac, Linux or a Linux VM on Windows. I knew many people that switched to a Mac because of that. They didn't want to manage a Linux desktop, which was more painful to do than today and with some glitches even today. I switched to Ubuntu instead…

That's pretty much how I've found it. Ruby works fine on Windows, until you hit a gem version that doesn't build. It usually works all right if you can stay a few Ruby versions behind and carefully pick the gems you use, but it'll likely fall apart if you try to collaborate with anyone using Mac or Linux, updating to the latest Ruby and gems and grabbing any gem they feel like.

Although now, there's WSL on Windows 10. Ruby works great on that for me, every version, every gem. It's kinda like the equivalent of Wine, so it just sits there and doesn't hog resources like a VM.

Re: Is Clojure dying, and what has Ruby got to do with it?

#253
post #238
post #155

Earlier quoted context omitted.

Doesn't make any sense as Rich makes a big point of having wasted years writing large applications in Java and C++ before discovering Lisp and FP. If anything Clojure is the ultimate anti-OOP which, I think, partly explains its lack of adoption sitting, as it does, on top of a mass of libraries designed with OOP.

ok, found it: https://stuartsierra.com/2008/08/08/clojure-for-the-semantic... I think it was in reference to the java ecosystem, more than "a better way to write java," although I still see it that way.

How can Clojure be reduced to "a better way to write Java" when you can live quite happily in Clojureland without writing a line of Java or importing a Java library?

Re: Is Clojure dying, and what has Ruby got to do with it?

#254

Earlier quoted context omitted.

I hear this a lot from the clojure community... but I think it's a missed attempt to pivot off the JVM and have clojure be useful for more people on a more popular platform. Missed? Yes. Pick a thing. Be excellent at it. What is clojurescript excellent at? Its a nice language, with not very nice tooling, that is hard to maintain and significantly different from the existing javascript code base you already have, with…

How much experience do you have with ClojureScript and other compiled to JS languages?

A lot. We use clojurescript and ES6 in production.

(the clojurescript is now considered 'legacy')

Re: Is Clojure dying, and what has Ruby got to do with it?

#255
post #19

Is Ruby supposed to be an example of "not dying" language? Because it has certainly passed its glory days as well. Also Common Lisp is better in every way ;) There's even a JVM implementation (ABCL) for people who like that sort of stuff.

I agree with you, Common Lisp does seem better and ABCL does well with Java interop (as does Clojure). While the community around Clojure is fantastically good, I don't like the language itself as much. Personally for my hacking pleasure, Haskell, Common Lisp, Chez Scheme (or other Schemes), and Ruby are all more fun for me to use.

If I remember correctly, you showed some kindness towards Clojure (the language). May I ask, what made you reconsider?

Re: Is Clojure dying, and what has Ruby got to do with it?

#256

Earlier quoted context omitted.

> Lisp used to be the language for AI IIRC, when Lisp was a leading language for "AI", it was specifically a leading language for expert systems , not ML. Even to the extent that was due to language features being well-suited to the domain, there's still no real reason to expect that suitability to translate to the radically different approaches to AI today.

> Even to the extent that was due to language features being well-suited to the domain, there's still no real reason to expect that suitability to translate to the radically different approaches to AI today. People these days use Python for ML, which is even less suited for the domain (and lacks the ability to re-suite itself), not to mention being significantly less performant than popular Common Lisp implementation…

Have you played around with Numba (http://numba.pydata.org/)? It's speedy.

Re: Is Clojure dying, and what has Ruby got to do with it?

#257
post #23

Earlier quoted context omitted.

I'm a Rubyist and don't know much Clojure, but that sounds pretty reasonable. I'm not sure if Ruby would have taken off if it wasn't for Rails. AFAIK, Rails pushed forward a lot of new ideas in web development and really brought Ruby into the mainstream. Going by that comparison, I would think it'd be hard for Clojure to really catch on without a revolutionary framework that you need it to work with, which may be tou…

Rails was definitely responsible for Ruby going mainstream, without it, it would slide below Python. More than that: I think that combination of TextMate and Rails brought a huge number of web devs from Windows to MacOS as well. I remember around maybe 2005/6 people were switching from Intel based Windows to, at that time, PowerPC based Macs (transition to Intel was about to happen) just to use TextMate and Rails - i…

I know for me the combination of RoR and the MacBook Pro caused me to never look back

Re: Is Clojure dying, and what has Ruby got to do with it?

#258

I think Clojurescript might be the thing. With advances in the Google Closure compiler, it's getting better and better. And the front end developer tools and libraries in Clojurescript are _the best_ out there. The holy grail for javascript exists in Clojurescript. Until then I'll keep making my Javascript env look like Clojurescript. With janky react devcards, Immutable.js, and react-redux.

I just finished watching this talk "ClojureScript for Skeptics" ( https://www.youtube.com/watch?v=gsffg5xxFQI ) that laid out the pros of ClojureScript and completely sold me on trying it out. Weird seeing this article about Clojure dying right after, too. In this talk I watched, the speaker argues for ClojureScript for SPAs because it has: * an excellent standard library (great functional programming so no need for…

Also super easy hot reloading with figwheel.

Literally just 'lein new figwheel' and you've got a project ready for everything you mentioned with hot reloading ready to go

Re: Is Clojure dying, and what has Ruby got to do with it?

#259

Earlier quoted context omitted.

With CLJS on Node booting up as fast as it does, I can envision a world where CLJS is vastly more popular than CLJ, since it's able to deliver a class of experience prohibited by the slow JVM startup. All the other common criticisms are shared by both CLJ and CLJS, so there's a chance that, eventually, CLJ only has the startup time as a knock against it, and CLJS has no such shortcomings. (Ignoring, of course, "Lisp…

So nice to hear someone else say this, and I feel the same about CLJS. And yeah WASM is looking pretty promising (threads/gc/efficiency), and a CLJ like language that targets it directly would be so interesting for the very long term future.

To the best of my knowledge, there's no GC in WASM.

Re: Is Clojure dying, and what has Ruby got to do with it?

#260

Earlier quoted context omitted.

With CLJS on Node booting up as fast as it does, I can envision a world where CLJS is vastly more popular than CLJ, since it's able to deliver a class of experience prohibited by the slow JVM startup. All the other common criticisms are shared by both CLJ and CLJS, so there's a chance that, eventually, CLJ only has the startup time as a knock against it, and CLJS has no such shortcomings. (Ignoring, of course, "Lisp…

There are also things that clj has and cljs doesn't have and this is the top-class virtual machine. lots of us really appreciate JVM, and are not impressed at all by node, and especially its ecosystem.

That just depends on your background. For a bunch of us folks who come from a non-JVM background, we could say the same about Java. Really, Java and JS are the two biggest language communities in the world, with phenomenal feats of engineering in their runtimes, and a whole host of things to complain about. Since CLJ and CLJS are tied in this regard, I still think the startup time is the only differentiable factor in my proposed hypothetical future.
Post reply on HN