Hacker News new | ask | show | jobs
by pori 3774 days ago
Seen a lot of Erlang mentions in this thread. Is that the native alternative to Go?

Personally, I prefer to write code in a functional manner. While I've always thought Go looked like an amazing platform for programming in general, I haven't been keen on moving to another imperative language.

It seems the landscape for functional alternatives are mainly Scala and Clojure which are both based on the JVM and require a bit of time to learn the tooling. I am not a Java or JVM export, so I haven't been too inspired by this either.

1 comments

> It seems the landscape for functional alternatives are mainly Scala and Clojure

Cannot talk about functional alternatives without mentioning Haskell. OCaml (when abstaining from the "O", as many OCaml'ers do; similarly Scala'ers often abstain from the "O" in Scala) is also an interesting option.

Finally there's Rust, which is besides being a bit more functional also more low-level than Go.

While being fairly young, Frege[1] also deserves a mention. Very similar to Haskell, but on the JVM.

1: https://github.com/Frege/frege

Well, I was tempted to mention Haskell. Problem is, I haven't found a practical use for it. Of all the FP languages, this is actually the one I am most tempted by.

I had forgotten about Rust. Are there major projects being used for this yet? I've heard it's picking up quite a bit.

> Well, I was tempted to mention Haskell. Problem is, I haven't found a practical use for it.

That's the same as saying:

Well, I was tempted to mention Go. Problem is, I haven't found a practical use for it.

That is to say, just pick a problem and try to use Haskell to solve it. 90% chance it will fit your niche fine.

Depends on how you define "major". Dropbox is currently running Rust in production, at the core of their product. Has been for about six weeks now. That's probably the largest, most serious use. There are also tiny bits in Firefox, that will be included starting with the next release.

There's a lot of other usage too, it all depends on how you define "major".