On Fri 26 Jul 2013 10:32:09 AM PDT, Brendan Eich wrote: > Norbert asked me yesterday whether we shouldn't start moving from > Python to JS. The obstacle historically has been lack of build-prereq > industry-grade "js shells" already installed. Does node change that?
Not in my opinion. It's common to be on a system with python and without Node. Also, how is that dogfooding? To me, dogfooding means you're using an environment to discover inadequacies that you have control over fixing. Obviously with Node using v8, we don't have a very direct path to fixing stuff in the JS engine. But the underlying JS engine is unlikely to be where most of the problems lie anyway: a build system is all about integrating with the operating system, and that's Node stuff. Which means that anything we fix wouldn't feed back into our products, so you can't really call it dog food. I don't see the win in eating our neighbor's dog food, as tasty as it may be. That said, I think there may be ways we could do more dogfooding. It works fine for massaging and analyzing data. For example: it's all bhackett's fault, but the static rooting analysis uses spidermonkey's JS shell to compute the analysis. It's broken down into a handful of separate stages, each executing as an independent JS script (and the final stage spawns off a couple of parallel worker processes). The scripts load in text files using the shell's builtins, and database files using js-ctypes. The orchestration is done through a combination of shell and python scripts. (Doing the orchestration in spidermonkey JS would require it to learn about files and processes and pipelines and things. Which we've been sneaking in, a little, but there's no point in turning it into Node.) My experience can probably be summed up as (1) it's a pain in the butt when you hit stuff that the shell doesn't support or doesn't support well, (2) writing JS still feels clunky in comparison to writing Python, and (3) JS is *fast*! #3 partly makes up for #2, because it shortens the edit/run/debug cycle. _______________________________________________ dev-tech-js-engine-internals mailing list [email protected] https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals

