I'm curious, what part of the stdlib (OTP) does Couch actually use and what exactly about the Erlang VM is special? I, personally, am pretty comfortable with a wide array of languages (Erlang excluded for now) and to me the conceptual idea of persistent BTree's with map/reduce over stdin/stdout to view servers matters way more than what language it's written in currently. It's exactly why I chose to write the CouchDB emulator in JavaScript and also why I'm super comfortable working with CouchDB. I never see or encounter Erlang. All I see, functionally, is REST + JS and I can extrapolate the inner workings from there.
While I'm not necessarily advocating CouchDB to be rewritten in another language, I am wondering the choice of Erlang over other more "prevalent" languages. Given the time I have at hand, I definitely don't see myself contributing a lot in Erlang, though I could help in the view server that's in JavaScript. Thoughts? K. On Tue, Apr 7, 2009 at 3:41 AM, Jan Lehnardt <[email protected]> wrote: > > On 7 Apr 2009, at 10:12, 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. >> >> [...] >> >> So I'm wondering what everybody here thinks. > > To me Erlang is three things: The language, the stdlib (OTP) and the VM > (BEAM). These three things make Erlang the success it is (in my opinion). > Strip out BEAM and replace with JVM and you get something "less" (in my > opinion). I understand that running on the JVM and using the Java ecosystem > is a bonus for some people, but it is not for me*. > > In case it is not clear, this is just my opinion. :) > > * There are cases that can be easily found where I'd decide that using the > JVM is a good idea. CouchDB is not one of them. > > Cheers > Jan > -- > >
