There is a good post floating around on why Erlang is suited to its own VM and not so much so to the JVM. Though this isn't directly what you're asking, it is relavent. Since couchdb endeavors to make distribution of the database across machines a feature, I suspect getting this working *well* on a JVM-backed language like
Scala or Clojure may be somewhat more difficult in comparison to Erlang.

Though the JVM has good support for threading models (arguably one of the best of the imperative language VM's), it was designed from the ground up like Erlang to have such fundamental concurrency support. You can tack on the concurrency (ie: TerraCotta) but its still not the same as something like BEAM.

My 2 cents.

-Zac

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.

Reply via email to