[erlang-questions] Erlang Extension Proposals (EEPs)

Hubert Matthews <>
Thu Feb 1 21:03:04 CET 2007


> If you have to change your code to run under a different 
> implementation, it means the language implementation has failed.

There are two approaches to this sort of problem.  The first is the 
lowest common denominator (i.e. distributed intersection) of features, 
which gives you a small and somewhat weak language and library.  C and 
C++ have taken this route as they strive to run on any platform and 
therefore (currently) lack standard libraries for threading, GUIs, 
etc.  Java is similar but with a much bigger library and a weaker 
language.  Think of Java Swing GUIs: they don't look native at all.

The other approach is to exploit the platform and pay the porting 
cost.  .NET applications are like this.  The Mono implementation for 
Linux can do most everything except the WinForms part which is so 
tightly bound to the Windows GUI that it is almost impossible to 
emulate effectively (or so I'm told).

The first approach means you forego a lot; the latter leaves you open 
to the darker side of Fisher's Law of Adaptation.

Which route should Erlang take?  Probably the broad LCD path with 
separate paths for the language and the libraries.

-- 
Hubert Matthews         http://www.oxyware.com/
Software Consultant     



More information about the erlang-questions mailing list