Why Erlang is the best concurrent language available

Sean Hinde <>
Thu Jan 23 17:26:49 CET 2003

xref is your friend. It will analyse a set of modules (e.g. a whole
installation) for calls to non-existing functions in other modules.


> -----Original Message-----
> From: Eric Newhuis [mailto:]
> Sent: 23 January 2003 16:02
> To: 
> Subject: Re: Why Erlang is the best concurrent language available
> I don't have enough experience to pass judgement yet but so 
> far I will say
> that Erlang is the best language that I have found for doing 
> concurrent
> programming in an Extreme Programming environment.
> Erlang is a great language for testing Erlang.  And I've not found any
> parallel in other languages that allows me to test the complexities of
> concurrency as easily as in Erlang.
> We have adopted an OO style whereby each module is a distinct 
> active object.
> And our unit tests are developed along side each object.
> This is the most fun I've had writing software in my life.  
> I've done C,
> C++, Java, K (like APL), C#, tiny amounts of Perl, VB, many 
> other things,
> and now Erlang.  I've even tried ObjectiveCaml.  I've even 
> tried Douglass
> Schmidt's Reactor in C++, both the ACE and my own proprietary stuff.
> So far, among all of these, Erlang seems the best for my 
> problem space.
> There is only one stumbling block for my team right now.  
> Because we don't
> know how to check for module dependencies during compilation 
> time, when we
> refactor module names we sometimes forget to modify the 
> import statements
> and it takes a long time to figure out why our unit tests break.
> I recall that there was some utility or feature that does 
> module dependency
> checking but I think I need two things:
> 1. Within a module I want strict explicit import rules.  I 
> want the compiler
> to bark if I use a module that I haven't explicity imported.  
> If not the
> compiler then some sort of tool I can invoke from make.
> 2. Among interdependent modules I want something to check 
> that all modules
> actually exist before I run my code.  I need something I can 
> invoke from
> make.
> I think these are the two things that are holding us up from 
> claiming that
> Erlang is ideal as Erlang can be.  So once we figure out how 
> to do these
> things we'll be very happy and convinced.
> Sincerely,
> Eric Newhuis

This email (including attachments) is confidential.  If you have received
this email in error please notify the sender immediately and delete this
email from your system without copying or disseminating it or placing any
reliance upon its contents.  We cannot accept liability for any breaches of
confidence arising through use of email.  Any opinions expressed in this
email (including attachments) are those of the author and do not necessarily
reflect our opinions.  We will not accept responsibility for any commitments
made by our employees outside the scope of our business.  We do not warrant
the accuracy or completeness of such information.

More information about the erlang-questions mailing list