First thoughts on Erlang
byzantinereality.com
byzantinereality.com
The syntax is a little jarring at first, more-so than most languages, but it's really not that bad. And as long as you stick with OTP, generic servers, and the like, you get to avoid some of issues that can make Erlang code harder to follow (naked bang message passing, spawning processes directly, etc).
Frankly, I think the syntactical warts (ending line variations, record syntax, if-statement construct, etc) are well worth it for the benefits of message passing, lightweight process spawning, pattern matching, code hot-swap, and particularly locational transparency.
At the very least, Erlang is an interestingly different enough language that I recommend it for anyone to spend a few weeks to learn at least the basics.
It's great that the author is learning a new language, but maybe wait until you've actually done something with it or at least finished the book to write about it? First impressions don't mean much.
A quick look shows that it's the sixth chapter. Either way, he's clear about this disclaimer, and his post was enough to peak my interest in this specific book.
For you, first impressions _do_ seem to mean much.
Is it Erlang’s semantics that really rub people the wrong way?
... after seeing O’Caml, Haskell, and Clojure before, Erlang feels
a bit easier to get the hang of. Erlang’s semantics indeed throw
people off, especially those who know a C-style language.
I write in Haskell, I knew OCaml, Racket is a friend of mine. Erlang is no Clojure.The problem with Erlang is not one of semantics, it's one of syntax. I find the syntax of Erlang jarringly bad.
Try this for a longer rant: http://damienkatz.net/2008/03/what_sucks_abou.html