Live data from Hacker News

Ask HN: Which is the best functional Programming language?

news.ycombinator.com

1–3 of 3 posts

Re: Ask HN: Which is the best functional Programming language?

#2
I've had experience with both Scala and OCaml (both which allow non-functional programming also). F# is the Microsoft version of OCaml.

Scala is easier to learn if you know Java, and has excellent IDE support in both Eclipse and Intellij IDEA. "Programming in Scala" is a good introduction and reference for Scala (http://www.artima.com/shop/programming_in_scala), but doesn't cover the new features in Scala 2.8.

I had good experiences with OCaml also (which compiles down to machine code, so has the potential to be faster than Scala if performance is critical). I believe it has more advanced tail-recursion optimizations. It seemed that floating point arithmetic was slow because each number had to be stored on the heap separately.

Re: Ask HN: Which is the best functional Programming language?

#3
My preference is for erlang. I believe it is the only one that does concurrency "right", though I don't know the others well enough to prove it. Any blocking, as in transactional memory or locks is, in my opinion, a real concurrency problem.

As I learned erlang and OTP I kept finding design choices I really appreciated.

The pragmatic programmers book on erlang was written by the creator of the language and I think is one of the better programming books ever. Clearly he's spent several decades teaching this language to perplexed students, cause he found the right way to illuminate it.