Impressions of Mozart-Oz
Mon Dec 9 15:34:31 CET 2002
I hesitated to answer this, I'm no Erlang guru, so consume the following
with salt to taste. But I would like to add my £ 1/50th because I've
heard plenty of A vs. B arguments over programming languages, and as an
end user I wish to express why I'd rather use Erlang over Lisp, or
Prolog, or even C++ (now there's a surprise!). And I'm curious too :-)
There is one major thing missing from the Mozart project that initially
attracted me to Erlang: Applications. I found Erlang because I was
looking for an application including the Megaco stack. Erlang happened
to be part of the learning curve, and solved a real-world engineering
problem for me, so I learnt Erlang and now prefer to use it where I can
because it helps me more than other languages I know to solve problems.
It would seem to me that Mozart suffers the same problem as almost all
Functional/Logic programming languages, in that it originates and will
probably remain in academic circles. The applications it offers to solve
are too abstract to be of interest to me.
What makes Erlang so powerful in my eyes is that here I have a set of
tools designed to tackle the programming problems I face in professional
software engineering, because it is designed and built to solve the type
of engineering problems I encounter every day. Libraries are what I need
to solve problems and in my opinion are an integral part of a language.
I don't have the time available to reinvent the wheel, and thankfully
the CS labs at Ericsson supplied some very fine wheels, thank you guys.
(I spent two years writing wheels/libraries for a proprietry language
similar to Smalltalk and I experienced the implications of not making
them perfectly rounded!)
Erlang is also fast, efficient, simple, explicit, and expresses flow
control, message passing and concurrency elegantly. It may also be
possible to prove that code is mathematically correct, but I haven't
found that to be a major selling point for me (I'm not a mathematician!)
Erlang seems to have got the fundamentals right, and also shares the
same aims as the huge majority of bread-and-butter programmers who
simply want to get a job done!
So why isn't it the defacto standard? The answer is probably hype and
marketing. We mostly use C++ and Java despite the crap code we end up
writing and, worse, maintaining! There hasn't been a Functional/Logic
programming trend like the OO fad that swept the scene (Not a trendy
concept? Maybe before my time? It is old after all...), and Ericsson,
despite the courageous erlang.org Open Source effort, hasn't invested
the kind of effort of the same scale that propelled C++ and Java into
prominence. It's no fault of theirs, they're sadly not going to make
money out of Erlang.
The remarkable thing is that Erlang is growing in popularity simply due
to its technical superiority. This is a freakish rareity!
Eric Merritt wrote:
> I have been spending a bit of time playing with the
>mozart-oz (www.mozart-oz.org) system. I was curious as
>to what the impressions of some of you Erlang Gurus
>are. This is just an exercise in curiosity.
>Do you Yahoo!?
>Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
More information about the erlang-questions