Erlang is getting too big
Joe Armstrong
joe@REDACTED
Mon Oct 13 14:38:36 CEST 2003
> Hi,
>
> An observation from the trenches.
>
> There are huge problems out in the real world getting companies (or
> even other departments) to adopt Erlang. One of the arguments in favour
> of Erlang has been that it is a "small" language so the overhead of
> learning it and, vastly more important, supporting the applications
> written in it is small.
On Mon, 13 Oct 2003, Sean Hinde wrote:
Yes
> This is no longer the case, and from what I see on the mailing list and
> in conferences there is a strong push towards adding more obfuscation
> to an already large and (for C++ types) confusing language.
I think there is a lot of talk here but not much action :-)
Sure there is a lot of talk about things that would be nice, but
this does not mean to say that the language is growing in an
incontrollable manner - I have ofter argued that "If we add something"
we should "take something out" and I think this is still and always
the case.
IMHO Erlang is perceived as being large because the distribution
keeps growing in size - this is because the language and the
applications are not distributed separately - so it becomes very
difficult to distinguished exactly "what is Erlang".
I would very much like to see the distribution split as follows:
1) "The language" + the *minimal set of libraries necessary to
compile and run a simple application.
2) A set of applications
- o -
Now 1) is (roughly) the compiler, the run-time system + *half* of
the modules in stdlib and kernel. This is not large. My earlier
stand-alone Erlang sytems achieved 1) in less than 1.44 MBytes.
2) Is potentially huge
- o -
The Erlang OTP system is actually three things
- The language
- OTP
- A number of applications
But the boundaries are not clearly visible.
I think it would greatly improve things if we could release the
basic language stuff, OTP and the applications separately - so that the"
distinctions become clearer.
/Joe
More information about the erlang-questions
mailing list