Live data from Hacker News

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

lambdaisland.com

81–90 of 261 posts

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

#81

Earlier quoted context omitted.

There seems to be a very nice solution to the parenthesis problem: https://sourceforge.net/p/readable/wiki/Home/ I have no idea why it hasn't caught on. As far as I'm aware, there's no Clojure implementation. Lispers like their parentheses.

(we) lispers LOVE our parentheses. "Elegant weapons... for a more civilized age." Ref: https://xkcd.com/297/

I love that particular xkcd

I'm not even a lisper.

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

#82

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.

As someone who writes JavaScript for a living (among bits of Java and Swift), I'm loving ClojureScript. I'm currently building a side project with it. But I am still a bit skittish of Clojure (JVM). The JVM just feels slow and cumbersome compared to what I'm used to (Node.js, Erlang/Elixir, Python). The lack of good error messages is manageable when combined with figwheel on the CLJS side, but there doesn't seem to b…

In fact, I would say that if ClojureScript's interop with React Native could be made to be much smoother, that would be a real killer app.

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

#83
post #70
post #38

Earlier quoted context omitted.

I always thought the Java tie-in was a double-edged sword. For some potential Clojure users, in addition to learning the language they were interested in, they'd also have to half-learn a language (and its tooling) that they probably weren't interested in. I guess in the US there is/was an assumption that everyone coming out of the computing education system is already experienced with Java.

I feel like Clojure is more of a language that just happens to exist in the same package ecosystem as Java, and which offers a good syntax for fluently calling into the APIs those packages offer. Like Elixir with Erlang, or Rust with C. You don't really need to know Java to write Clojure, though you do need to know things about the JVM and about the particular (Java) types that the JVM's reflection and concurrency pr…

Yeah - I didn't mean to imply that that was Hickey's main motivation for the tie-in. Ultimately the sheer real-world prevalence of Java might make my original gripe irrelevant.

You say you don't really need to know the de-facto language of such "host" platforms, but that strikes me as putting a developer into a rather fussy and boxed-in posture if they're going to try and use the NewLang seriously/professionally.

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

#84

Earlier quoted context omitted.

Contrast, for a moment: var x = fib(a, b); with (let x (fib a b)) And count the delimiting symbols. I count 5 in the first example. In the second, I see 4. Let's try something a bit harder. function(a, b) { return a * b; }(6, 4); vs. ((fn (a b) (* a b) ) 6 4) 10 first, 8 second. Yes, "why all the [symbols]" indeed.

For your second example, your JavaScript is wrong. Let's compare the ES2015 JavaScript: ((a, b) => a * b)(6, 4); ...against the Clojure: ((fn [a b] (* a b)) 6 4) Not a lot in it, really, is there?

If we're golfing...

  (#(* %1 %2) 6 4)

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

#85

Earlier quoted context omitted.

Contrast, for a moment: var x = fib(a, b); with (let x (fib a b)) And count the delimiting symbols. I count 5 in the first example. In the second, I see 4. Let's try something a bit harder. function(a, b) { return a * b; }(6, 4); vs. ((fn (a b) (* a b) ) 6 4) 10 first, 8 second. Yes, "why all the [symbols]" indeed.

For your second example, your JavaScript is wrong. Let's compare the ES2015 JavaScript: ((a, b) => a * b)(6, 4); ...against the Clojure: ((fn [a b] (* a b)) 6 4) Not a lot in it, really, is there?

The clojure example is really (* 6 4) since * is already a function, not an operator as in most languages.

On the other hand, you can trivially create a macro that would implement the exact es2015 syntax (or at least a very close match), but why would anyone do this?

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

#86
post #68
post #63

Earlier quoted context omitted.

Sure, but that's the point: if Datomic is "the best thing Clojure's got" as far as killer-apps go—and it's not really that important to the community—then Clojure doesn't really have a killer app. A killer app is something that looks like Rails does in Ruby, or Phoenix does in Elixir: a thing where 50%-or-more of the people learning the language are only learning it in the context of using that one framework, and so…

Clojure, and lisp in general, tends to avoid the "framework" way of thinking prevalent among object-oriented languages. It's therefore no surprise that something like Rails hasn't taken off. There are, however, libraries and patterns which are very common, ring for example.

[deleted]

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

#87
post #29

> Elm, Elixir, JavaScript, seem to be better at prioritizing the humanistic aspect. Both in the affordances of the software (Elm’s famous error messages), and in person-to-person interactions. Can't stress that enough. I have observed Elixir community and I have to say Jose and others did an excellent job fostering a healthy, friendly and warm community. That is such an essential component. That combined with standin…

I tried Clojure and literally within the first hour got a super ugly Java stack trace from trying to add two numbers, and that was after already being a bit miffed by JVM startup time (i'm very big on instant unit test feedback). Meh.

The instant feedback you get from Clojure repl driven development is light years ahead of Ruby. Try sticking to Clojure, you'll see the joy of testing. Stack traces are indeed ugly.

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

#88

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 don't know. Javascript is pretty slow as it is, and clojurescript is even slower. There is an inherent problem with compiling a dynamic typed language to another dynamic typed language...if your target language doesn't have the same semantics as your source, you end up having to embed a bunch of runtime code into your compiled output, or sacrifice compatibility. [0]

With a strong statically typed language like scalajs or elm, you have a lot more static reasoning that can be done at compile time, allowing you to omit a lot of runtime support.

[0] http://www.lihaoyi.com/post/FromfirstprinciplesWhyIbetonScal...

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

#89
post #80

This is odd. I find myself moving to Assembly nowadays.

There will always be room in the market for trendy, abstracted languages like Assembly that provide simple syntax and garbage collection to sort memory management. Sometimes I think it's too user friendly though: assembly new project When you scaffold an app like this in assembly you hardly know what it's doing under the hood.

I thought programminggeek was making a joke. There's a high level language called Assembly? If so, it's 100% unsearchable. Or are you joking too? Got any links?

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

#90

Earlier quoted context omitted.

I don't hate emacs, I have however invested a lot more time and work into vim than emacs so that is why I do not use it.

I use spacemacs. before I had to have a vim plugin in every ide. But seeing the incredible power of emacs and the ease of integrating vim with it (pretty much a "pick your style" at the beginning of spacemacs installation) I'll never go back.

the only reason i didn't like spacemacs was the 3 keystroke combos for everything that I do with 2 strokes in vim.
Post reply on HN