Live data from Hacker News

Why Erlang matters

petrohi.me

11–20 of 75 posts

Re: Why Erlang matters

#11
post #4

Earlier quoted context omitted.

What do you mean by "Erlang allows us to take the good parts and move them to a 'friendlier' language when the time comes"? Is there something I don't know about porting code from Erlang to other languages? (Not being snarky, genuinely curious.)

Keep the idea of lightweight processes, crash at will, message passing, etc. and move these techniques into other languages so we don't have the awkward syntax.

There is still great chunk of goodness in the Erlang VM, which is not bound to Erlang language and can be further reused. Much like JVM having things like Scala and JRuby.

Re: Why Erlang matters

#12
post #6

People are always asking what is a good HN article, I'd say this is, great links to research that backs up many of the assertions. "Erlang matters today because it demonstrates how these semantics can be elegantly packaged in one language, execution model and virtual machine." I think yes, in a theoretical sense this is absolutely true. The question is why is it not a language in widespread practical use?

> The question is why is it not a language in widespread practical use?

1. It kind of is, I think RabbitMQ, CouchDB and Riak are doing ok, for example.

2. Both syntax and semantics are sufficiently different from "industry standard" to be a hurdle for majority of people... I'm being told. I don't understand this; the more different the language is the more interesting it seems to me and the more happy I am to learn it[1], but I heard this argument enough times to accept it as (sad) reality.

[1] And there is still so many of them to learn! Take a look at any one RosettaCode page (http://rosettacode.org/wiki/Y_combinator) if you don't believe me :)

Re: Why Erlang matters

#13
What's missing from your article is a demonstration or theory that outlines how transmission over CPU-interconnects of immutable messages as blocks of memory outperforms the cache coherence algorithms already in place.

Immutable message transmission has no way to say "I already know about this message; don't send it again."

Most of the good characteristics of Erlang that you describe are achievable in other languages.

So what I'm asking is, by what concrete mechanism does immutable message passing outperform cache coherence?

Re: Why Erlang matters

#14
post #4

Earlier quoted context omitted.

What do you mean by "Erlang allows us to take the good parts and move them to a 'friendlier' language when the time comes"? Is there something I don't know about porting code from Erlang to other languages? (Not being snarky, genuinely curious.)

Keep the idea of lightweight processes, crash at will, message passing, etc. and move these techniques into other languages so we don't have the awkward syntax.

If it were just the syntax, it'd be ok.

The paradox of Erlang is that the sorts of environments it's used in and that initially supported its development are often fairly conservative, so the features and choices it started out with are not easy to get rid of. This means the language is saddled with some ugly warts.

It's really good at what it does and is definitely worth a look, but I agree that sooner or later someone is going to come along and steal lots of the good parts and add them to a more modern language.

Re: Why Erlang matters

#15
It is not just "matters". It is a deeply-researched and well-engineered explicitly concurrent programming language by smart and passionate people. It is a very rare example of first-class project, compared to the common nonsense, like Java or, god forbid, NodeJS.)

If it is not that popular (which is rather good) it is not a language's fault. It is due to inability to acquire and maintain an appropriate mindset.

btw, there is a nice lecture - http://www.youtube.com/results?search_query=Erlang%2BJoe%2BA...

Re: Why Erlang matters

#16

Earlier quoted context omitted.

Keep the idea of lightweight processes, crash at will, message passing, etc. and move these techniques into other languages so we don't have the awkward syntax.

Aaaargh :( Why, why syntax does have to matter? I thought it matters too, at first, but after sixth or so language I noticed the feeling of importance of syntax vanishing. Now I find good support in my editor much more important than syntax. (Edit: and "you don't need editor support if you have good syntax" doesn't seem true to me either)

That's the point. A great many programmers learn one or two languages over the course of their lifetimes - look at all of the career Java and C# programmers.

Re: Why Erlang matters

#17
post #8
post #6

People are always asking what is a good HN article, I'd say this is, great links to research that backs up many of the assertions. "Erlang matters today because it demonstrates how these semantics can be elegantly packaged in one language, execution model and virtual machine." I think yes, in a theoretical sense this is absolutely true. The question is why is it not a language in widespread practical use?

One of the huge hurdles for me personally was Erlang's heritage of Prolog syntax. I actually gave up once, and only cleared it second time around. Now I can see certain elegance and succinctness in the syntax.

That is the only proper way to learn Erlang. Your first week or two becomes so frustrating, you just leave for a month. Then it starts to click when you come back.

Things are much easier now with line numbers in error messages though.

Re: Why Erlang matters

#19
post #6

People are always asking what is a good HN article, I'd say this is, great links to research that backs up many of the assertions. "Erlang matters today because it demonstrates how these semantics can be elegantly packaged in one language, execution model and virtual machine." I think yes, in a theoretical sense this is absolutely true. The question is why is it not a language in widespread practical use?

> The question is why is it not a language in widespread practical use? 1. It kind of is, I think RabbitMQ, CouchDB and Riak are doing ok, for example. 2. Both syntax and semantics are sufficiently different from "industry standard" to be a hurdle for majority of people... I'm being told. I don't understand this; the more different the language is the more interesting it seems to me and the more happy I am to learn i…

Adding to your response: Big ones are using Erlang, such as Github, Heroku, Facebook and Amazon...

Re: Why Erlang matters

#20
Would it be safe to say Scala with the Akka lib offers the same robustness and distributed scalability as Erlang?

Erlang is using the actor model and so is Akka.

I really want to learn one or the other as a goto functional language.

I keep looking at sites like Netflix, Twitter and Foursquare. Those seem to be sites running on either Java or Scala.

Why would they pick that instead of Erlang?

Post reply on HN