Resistance to Erlang

Corrado Santoro <>
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:

Fax: +39 095 7382397

EMail: 
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