- SpiderMonkey (JavaScript engine)
Infobox Software
name = SpiderMonkey
caption =
developer =Mozilla Foundation /Mozilla Corporation
latest_release_version =
latest_release_date =
operating_system =Cross-platform
genre =JavaScript engine
programming language = C
license = MPL/GPL/LGPL tri-license
website = http://www.mozilla.org/js/spidermonkey/SpiderMonkey is the code name for the first ever
JavaScript engine , written byBrendan Eich at Netscape Communications, later released as open source and now maintained by theMozilla Foundation .Internals
SpiderMonkey is written in C and contains a
compiler , interpreter,decompiler , garbage collector, and standard classes. It does not itself provide host environments such asDocument Object Model (DOM).SpiderMonkey and its sister engine Rhino have implemented support for the ECMAScript for XML (E4X) standard.
Usage
It is intended to be embedded in other applications that provide host environments for JavaScript. The most popular applications are
Mozilla Firefox and theMozilla Application Suite /SeaMonkey , along withAdobe Acrobat and Adobe Reader. SpiderMonkey is also the JavaScript engine forYahoo! Widgets (formerly known as "Konfabulator") and UOX3, an "Ultima Online " server emulator. A rather popular and creative utilization of the SpiderMonkey JavaScript engine is theopen source Sphere suite of applications primarily intended to aid in the design ofrole-playing game s. Parts of SpiderMonkey are used in the Wine project'sJscript (re-)implementation. [ [http://www.winehq.org/pipermail/wine-cvs/2008-September/047548.html wine-cvs mailing list] ,September 16 2008 : “jscript: Added regular expression compiler based on Mozilla regexp implementation”]TraceMonkey
Mozilla has added optimization using [http://www.ics.uci.edu/~franz/Site/pubs-pdf/ICS-TR-07-12.pdf "Trace Trees"] to SpiderMonkey. Due to be released in late 2008 or early 2009, Firefox 3.1 is slated to include this new optimization technique which offers "performance improvements ranging between 20 and 40 times faster in some cases" [http://arstechnica.com/news.ars/post/20080822-firefox-to-get-massive-javascript-performance-boost.html]
See also
* Rhino
*List of JavaScript engines
*JavaScript OSA , a SpiderMonkeyinter-process communication language for theMacintosh computer References
External links
* [http://www.mozilla.org/js/spidermonkey/ SpiderMonkey (JavaScript-C) Engine]
* [http://developer.mozilla.org/en/docs/SpiderMonkey Documentation for SpiderMonkey]
* [http://sourceforge.net/docman/display_doc.php?docid=10853&group_id=50913 Franky Braem Tutorial on using JS from C++]
* [http://www.wxjavascript.net wxJavaScript, porting wxWidgets using SpiderMonkey]
* [http://SpiderApe.sourceforge.net SpiderApe] - a C++ library built on top of SpiderMonkey, intended to simplify the process of embedding and extending SpiderMonkey
* [http://soubok.googlepages.com/javascript Some projects that use Spidermonkey engine] - JavaScript Native Interface, JavaScript Host
* [http://code.google.com/p/jslibs/ jslibs project] -zlib ,SQLite ,NSPR , ode,libpng ,libjpeg ,libffi , (...) libraries for SpiderMonkey.
* [http://malzilla.sourceforge.net/ Malzilla] - Tool for huntingmalware by deobfuscating JavaScripts on web pages, using SpiderMonkey
* [http://www.trixul.com/ TriXUL] - [http://trixul.cvs.sourceforge.net/trixul/trixul/layout/jsengine (TriXUL CVS)] - Trixul XML-based GUI toolkit embeds SpiderMonkey, using JavaScript to implement logic behind its GUI, supporting calls from JavaScript to C++ objects.
Wikimedia Foundation. 2010.