13 comments

[ 2.8 ms ] story [ 28.6 ms ] thread
I've been reading the introduction to this and I'm hooked enough to give Erlang a go!

It's nicely written and light enough as well, nothing too heavy.

I generally like the style of this and "Learn You a Haskell..." which it is styled after. I was thinking of using the style for Python, Perl, or Tcl version.
It would be really cool to have it for Javascript+WebGL... hrm, I think I just found a side project for myself :)
Being already familiar with Erlang, I wish I had this resource while starting out. This is way easier to read for starting out from scratch on Erlang, and is definitely a light but comprehensive read.
I found myself enjoying this, even though all of these bad grammar titled randomly weird artwork _why-inspired programming books are surely a cliché now.
By the way, if you are a fan of a language trying to replace Erlang (with my blessing), OTP is your real target. The shared-nothing processes and message passing and all that stuff is really all there with the goal of making the OTP libraries possible. Copy all that other stuff but miss the OTP functionality, and you will have copied the style while missing the substance.
The second line of the kitty server:

    -export(start_link/0, order_cat/4, return_cat/1, close_shop/1]).
Is seems odd to me that the close bracket is just dangling at the end. I find the Erlang syntax rather inscrutable...
that's because it's a typo, not weird syntax. The linked file is fine. I just fixed it. Thanks for the find.
Just "learn you some Prolog" and it will all make sense.
Early versions of Erlang were implemented in Prolog.
Yep, Erlang was a DSL on SICStus Prolog.

Prolog's syntax is a lot cleaner, though - if you took your favorite language and added lots of new operators, so they were clearly the new language, how would it turn out? A lot of minor issues with Erlang (e.g. the whole ; vs , vs . thing) come from that.

Once you get past the surface details, though, Erlang kicks ass. Hold on!

(Prolog is awesome, too.)