The Next Mainstream Programming Language: A Game Developer's Perspective :: Redux
Julio César Carrascal Urquijo
jcesar at phreaker.net
Wed Jul 18 10:48:50 PDT 2007
Bruno Medeiros wrote:
> Hum, again Erlang, interesting. I had heard a bit about it before, on an
> article (again don't remember where) about a comparison between Apache
> and a web server built in Erlang. On a multicore machine Erlang did much
> because of it's massively parallel capabilities, etc..
Probably this one: http://www.sics.se/~joe/apachevsyaws.html
> This makes Erlang very interesting, but one must then ask questions
> like: What restrictions does Erlang's approach have? Does it have
> disadvantages in other areas or aspects of programming? Is it good as a
> general purpose programming language, or is it best only when doing
> concurrent applications? Can any of it's ideas be applied to imperative
> languages like D, Java, C#, etc.?
My (very limited) experience with Erlang on a (very small) pet project
is that you can't just transliterate a Java or C# app to Erlang. The
paradigm is too different, you have to redesign the entire app to
benefit from Erlang's features; but, once you start to get comfortable
with it you get several times more productive with Erlang.
> I personally am not looking deep into this (never had the use to study
> concurrency in-depth so far), I'm just pointing out that a lot of things
> have to be considered, and I have a feeling that there must be some
> downside to Erlang, or otherwise everyone else would be trying to bring
> Erlang aspects into their languages. Or maybe Erlang is just taking
> momentum. Time will tell.
Some of it's concurrency features could be implemented as a library.
gen_server and family is a Template Method using callbacks + Green
threads + error recovery on steroids.
What I'd really like to see on D is the bit syntax and pattern matching.
It is very useful to implement binary protocols and parsers. But I'm not
holding my breath.
More information about the Digitalmars-d
mailing list