Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Erlang was the first functional language I learned. It took me a couple weeks of pain but then once I got it, I started to love it. The "unreadable" becomes poetry. (And truthfully, the support for concurrency in erlang is why I chose it in the first place, I didn't care that it was functional, and since then I've not heard any suggestions of other languages that would make me want to switch, with one exception: elixir)

You might consider, if the syntax is just too painful, looking at elixir. Elixir is effectively erlang but with a more ruby-like syntax. I think elixir exists for other reasons, but the syntax being more readily accessible to ruby developers is a nice side effect.

http://elixir-lang.org

Not sure if elixir is the best way to learn functional programming, as I knew elrang before learning it, but it is a nice language, it is not a "hipster" language, and it has great support especially given how relatively new it is.



Not to put elixir down, but if someone wants to understand Erlang, I recommend just suck it up and learn the syntax. Its so so easy to read once you get the hang of it. The learning curve is nothing like Haskell. Getting comfortable with Erlang syntax takes only a few days of coding. Just reading it as an approach to get comfortable may put you off. Diving in and writing some code will take the edge off.


http://learnyousomeerlang.com/content

is a pretty good place to start.

I also recommend the book, "Erlang and OTP in Action." Don't fall into the trap of trying to reinvent the things OTP provides.


Thanks for the link. Maybe I try Erlang after all...

But a question: It says it's using Erlang 13B. Do you recommend using a newer version, or trying to compile/finding an old binary version of 13B? (I mean, is Erlang 16 compatible with 13, or they tend to break things?)

(I'm sure I'll find this out eventually when I start the tutorial, but it's always good to know this kind of things beforehand)


I hypothesize that for a ruby programmer, learning elixir would allow them to learn the way erlang works, and then the transition from elixir syntax to erlang syntax would be very easy.

The thing is, elixir is really just erlang with some extra features (which are really compelling to me) and some syntax changes that make it much more readable to non-erlangers. (or at least, I believe it would.)

But secretly, you're learning erlang. And afterwards the transition between the two will be seamless (Because they're really the same language.)


Elixir is a fantastic language and it's a lot of fun to code with, but you need to know at least the basics of erlang to use it well, because although it has an excellent standard library, it's not as comprehensive as erlang's.

I would definitely recommend anyone that wants to try Elixir, to at least try learn some erlang first. The learn you some erlang book is pretty fantastic.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: