638
edits
No edit summary |
|||
Line 3: | Line 3: | ||
Want to help? Write to jason dot orendorff at gmail dot com. Or visit irc://irc.mozilla.org/jslang and say hi. | Want to help? Write to jason dot orendorff at gmail dot com. Or visit irc://irc.mozilla.org/jslang and say hi. | ||
== | == Project summary == | ||
The | The goal of ActionMonkey is to merge SpiderMonkey and Tamarin. Particulars: | ||
* | * ActionMonkey will continue to support the [http://developer.mozilla.org/en/docs/JSAPI_Reference JSAPI], SpiderMonkey's existing C API, with necessary additions and as few deletions as possible. People currently using SpiderMonkey as a library should be able to install a new copy of the SpiderMonkey libraries, recompile their code, and run it without major changes. | ||
* SpiderMonkey's [http://lxr.mozilla.org/mozilla/source/js/src/jslock.h thread safety] and [http://lxr.mozilla.org/mozilla/source/js/src/jsscope.h property tree] integrated/reimplemented in Tamarin. | * ActionMonkey will have threading support. (See [http://developer.mozilla.org/en/docs/JS_THREADSAFE JS_THREADSAFE].) | ||
* | * We will use the [[Tamarin:Tracing|tamarin-tracing]] interpreter and JIT, so ActionMonkey will run existing JavaScript code (without AS3-style type annotations) fast. | ||
* | * SpiderMonkey's [http://lxr.mozilla.org/mozilla/source/js/src/jslock.h thread safety] and [http://lxr.mozilla.org/mozilla/source/js/src/jsscope.h property tree] will be integrated/reimplemented in Tamarin. | ||
* ActionMonkey will use SpiderMonkey's existing compiler to generate Tamarin bytecode (ABC) for the Tamarin VM to execute. (SpiderMonkey's compiler is faster and contains some Web compatibility quirks that might be tedious to reimplement in a new compiler.) | |||
* SpiderMonkey's GC will be replaced by [[Tamarin:MMgc]], evolved as needed. | |||
* [http://www.cs.cornell.edu/Info/People/jgm/lang-based-security/ Information flow] VM support for better security models. | * [http://www.cs.cornell.edu/Info/People/jgm/lang-based-security/ Information flow] VM support for better security models. | ||
edits