Resistance to Erlang
Corrado Santoro
csanto@REDACTED
Tue Apr 12 17:21:18 CEST 2005
Joe Armstrong (AL/EAB) wrote:
*snip*
> To make Erlang popular I think we must target the "partial domination" category for
> distributed fault-tolerant applications - this is what is was designed for, this is what it is
> good at.
>
*snip*
>
> Erlang is ideal for writing distributed applications - this is where it shines - but very few
> applications are distributed (most networked apps are simple non-fault tolerant client-server)
Yes this is true, but not only: Erlang stresses the concept of
"concurrent-oriented programming" (COP) in contrast to other programming
approaches (O-O ??). And in most cases, writing programs using COP seems
quite simple and natural (as Joe claims in his PhD thesis).
One example for this: I had to design a software simulator for a Grid
environment, something that should simulate 500 network nodes (please
note, "simulate" not "emulate") interacting through the exchange of
messages. I didn't need concurrency, but only to encapsulate the
behaviour of such nodes within "objects". I started writing the
simulator in Java, but, after a couple of hard working days, I was
flooded by a large number of classes, each one encapsulating a concept
of my world.
So... I gave up and restarted using Erlang. And you can imagine the result.
> The real area were we should be writing distributed apps is probably to be found in the cluster
> peer-2-peer worlds.
I completely agree! After all, what is mnesia if not a cluster or
mini-grid computing?
But the world seems to go in a different direction. P2P goes towards the
use of JXTA (Java + XML). Grid computing goes towards the use of the
Globus toolkit (Java + XML + Web Services). So, while the "Java man"
claims that Erlang has worse performances than Java, I see this kind of
messages on the Globus mailing list:
"I've got a service, running under Globus 3.2.1, which returns an
array of approximately 600 objects with the following GWSDL
definition:
<xsd:complexType name="ShareType">
<xsd:sequence>
<xsd:element name="exchange" type="xsd:string"/>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="sector" type="xsd:string"/>
<xsd:element name="symbol" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
Unfortunately, it appears to take 90 seconds or so to pass this array
to a client application running on the same server."
90 SECONDS!!!!!! Once a friend of mine said that Microsoft made Win95 so
slow in order to force customers to upgrade their PC or buy more
memory... Are we seeing a similar trend with web services and XML?
I think that Erlang would be perfect to support Grid computing, but I'm
frightened to make such a proposal to Grid people (also belonging to my
organization) because they seem to view Globus (and web services) as a
silver bullet: "The world uses Globus, so we must adhere". And I don't
want to fight, alone, against windmills.
> IMHO people will use language X instead of Y if they can make more money
> using X than using Y - then eventually all the users of Y die out - Darwinism.
But also this Darwinism is true: "People will use language X instead of
Y, if X is advertised, supported, taught and used more than Y". ;-)))
Ciao,
--Corrado
--
======================================================
Eng. Corrado Santoro, Ph.D.
University of Catania - Engineering Faculty
Department of Computer Science and
Telecommunications Engineering
Viale A. Doria, 6 - 95125 CATANIA (ITALY)
Tel: +39 095 7382144 Int. (5) 8035
+39 095 7382380
+39 095 7382365
+39 095 7382364
VoIP: sip:8035@REDACTED
Fax: +39 095 7382397
EMail: csanto@REDACTED
Personal Home Page:
http://www.diit.unict.it/users/csanto
NUXI Home Page:
http://nuxi.iit.unict.it
======================================================
More information about the erlang-questions
mailing list