Linking to/from a gen_server?

Marc Ernst Eddy van Woerkom <>
Mon Mar 3 01:47:15 CET 2003

> 1. No static typing.

Is it just a matter of taste, if this is a good or a bad thing?
One still has the possibility to run a type inference engine on 
existing Erlang code (think a kind of lint for types). 
I know at least one non-trivial one.

> 2. Bytecode interpreted (i.e. not compiled to native code).

This seems to be tackled by the HiPE extension, a native compiler.
However I can't judge how it works in comparision to the standard VM
(performance, correctness).

> 3. Possibly not "really functional", i.e. mutable stuff (message sends 
> and state-dependent responses) play an important part when it comes to 
> structuring and maintaining large programs. 

This is true. But can one really do better?
Is it possible to provide means for concurrent and distributed programming, 
while still ensuring that referential integrity? 
Or are side effects unavoidable due to the unpredictiveness of the 
behaviour of loose coupled real wordl concurrent/distributed systems?

> 4. Some roots in Prolog, which I find... er... disturbing (my personal 
> encounters with Prolog were, say, unlucky... its strengths were less 
> useful than I had expected, and definitely not worth the weaknesses that 
> were the payment for its strengths - IMHO (I never became a Prolog guru)).

The syntax is influenced by Prolog.
And I must say I really like it. (OK I encountered Prolog before Erlang)

Then there is the dynamic typing.
But is there more in common? 
(Except that early compilers were written in Prolog).

Otherwise Prolog like logic programming (the machine proof constitutes the program)
is very different from Erlang.


More information about the erlang-questions mailing list