I would imagine Scala is interesting for those with an existing
commitment to a large legacy base of Java code. However it's Erlang
features are bolted on after the fact rather than built in from the
ground up. I'm reminded of the ancient chinese expression that one
can't make a silk purse out of a sow's ear :)
As languages go, Erlang is a functional language and so like Haskell,
Lisp, etc.. it's not clear that it will ever be more than a niche
language. Used well it can become a differentiator. Not including
Mochiweb, CouchDB is still a fairly small piece of code considering
what it does. I suspect were it written in Java there would likely be
about 10 times the amount of code.
One of the sweet things about CouchDB is that an average web
developer with good Javascript skills can use it quite productively
with little or no Erlang skills. Perhaps this is less true now but
certainly will be after 1.0
Thanks for the link, I think it summarizes the differences well.
Cheers,
Bob
On Apr 7, 2009, at 5:12 AM, Wout Mertens wrote:
Hi everyone,
I've always been worried about the fact that CouchDB runs on
Erlang. After all, the Erlang ecosystem isn't that large or well-
established in (non-telephony) enterprise settings.
That's why, when I read about Scala, my interest was piqued. Scala
is Java with adaptations to make it scale. Adaptations mostly
nicked from Erlang, no less. On top of that, Scala compiles to JVM
bytecode, so that it's "entreprise-compatible". In our company, the
preferred application is Java based, because the deployment teams
understand it and know how to manage JVM farms.
So I began to wonder if it wouldn't be better for CouchDB to be
written in Scala.
Here's a link I found comparing Erlang and Scala:
http://yarivsblog.com/articles/2008/05/18/erlang-vs-scala/
After reading the blogpost I was thinking "maybe not" but after the
comments, I'm not so sure any more.
So I'm wondering what everybody here thinks.
Wout.