Interesting, thanks for the feedback. Always cool to hear why/how decisions were made with these sorts of projects.
Andy On Thu, Sep 2, 2010 at 11:35 AM, J Chris Anderson <[email protected]> wrote: > > On Sep 1, 2010, at 11:17 PM, Paul Davis wrote: > >> On Thu, Sep 2, 2010 at 1:47 AM, andy e <[email protected]> wrote: >>> I've got no real issue or concern, was just purely curious and was >>> thinking about couch's use of SpiderMonkey as the JS engine tonight. >>> >>> Is there a reason why couchdb uses spidermonkey, vs v8 (as node.js is >>> using)? Is it license related? Too much work for too little gain? Was >>> V8 not around when choosing an engine (likely, given the timelines...I >>> think)? >>> >>> Anyway, just curious. >>> >>> thanks, >>> >>> andy >>> >> >> Mostly it's history related. CouchDB used Spidermonkey before V8 even >> existed. Reasons for sticking with Spidermonkey involve packaging and >> multi-threading. V8 being newer doesn't have packages available on >> semi recent distributions. I don't have my netbook awake so I can't >> check that it even has one for Ubuntu 10.04. I know that node.js >> packages an entire V8 source checkout as part of the distribution >> which package managers are not fond of. Also AFAIK, its not yet got >> multi-threading support. The current CouchDB use doesn't require this, >> but there are a couple different experiments running that do. There's >> also (again, IIRC) no support for E4X which has been >> semi-officially-kinda-sorta-expected in the CouchDB interpreter for >> things like generating RSS feeds. >> > > I'll add that Spidermonkey is probably faster than v8 for map reduce, as it > has the tracing jit. V8 is designed to be fast for web pages, not long > running processes. > > That said, it should be "trivial" to make a node.js query server, just as it > is to make a python or ruby query server. > > Here is the test suite: > > http://github.com/apache/couchdb/blob/trunk/test/view_server/query_server_spec.rb > >> But bottom line, it was deemed the best engine when it was chosen and >> a couple things have evolved such that it'll be hard to move away >> until one of the other engines catches up in multiple categories. >> >> HTH, >> Paul Davis > >
