mozilla

Revision 294502 of SpiderMonkey

  • Revision slug: SpiderMonkey
  • Revision title: SpiderMonkey
  • Revision id: 294502
  • Created:
  • Creator: Jorend
  • Is current revision? No
  • Comment
Tags: 

Revision Content

SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is used in various Mozilla products, including Firefox, and is available under MPL/GPL/LGPL tri-license.

SpiderMonkey 1.8.5 is the most recent standalone source code release.  It implements JavaScript 1.8.5, and it is largely the same engine that shipped with Firefox 4. You can download full source code here: http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz (MD5 checksum: a4574365938222adca0a6bd33329cb32).

Documentation

General

SpiderMonkey Build Documentation - How to get SpiderMonkey source code, build it, and run the test suite.

Introduction to the JavaScript shell - How to get, build, and use the JavaScript shell.

Running Automated JavaScript Tests - How to run the JavaScript test suites.

Creating JavaScript tests - How to add tests to the JavaScript test suites.

New to SpiderMonkey - A guide to hacking on SpiderMonkey.

Setting up CDT to work on SpiderMonkey - How to configure CDT to work on the SpiderMonkey code.

 

JSAPI

JSAPI User Guide - This guide provides an overview of SpiderMonkey and describes how you can embed engine calls in your applications to make them JavaScript-aware.

JSAPI Phrasebook - Shows the JSAPI translation of some commonly used JavaScript expressions and statements.

JSAPI Reference - SpiderMonkey API reference.

Bytecode Reference - SpiderMonkey bytecode reference.

JS Debugger API Guide - A user guide to the new JavaScript Debugger API introduced in Gecko 8.0 {{ geckoRelease("8.0") }}.

JS Debugger API Reference - API reference for the Debugger object introduced in SpiderMonkey 1.8.6, which corresponds to Gecko 8.0 {{ geckoRelease("8.0") }}.

JSDBGAPI Reference - SpiderMonkey debugging API reference; this is for the debugging API from releases prior to SpiderMonkey 1.8.5, although it hasn't been removed.

Tips, tricks and philosophy

How to embed the JavaScript engine - A bare-bones tutorial about embedding SpiderMonkey.

SpiderMonkey Garbage Collection Tips - Tips on avoiding garbage collector pitfalls.

SpiderMonkey Internals - A design overview and a file-by-file walkthrough of the implementation.

SpiderMonkey Internals: GC - Separate internals article on the GC.

SpiderMonkey Internals: Thread Safety - How SpiderMonkey's request model works inside.

Community

Join the user mailing list: {{ DiscussionList("dev-tech-js-engine", "mozilla.dev.tech.js-engine") }}

Join the internals mailing list: {{ DiscussionList("dev-tech-js-internals", "mozilla.dev.tech.js-internals") }}

Questions? Ask on IRC!

See also Infomonkey.

Bugz? File them in Core -> JavaScript Engine

{{ languages( {"zh-cn": "zh-cn/SpiderMonkey","de": "de/SpiderMonkey", "es": "es/SpiderMonkey", "fr":"fr/SpiderMonkey", "it": "it/SpiderMonkey", "ja": "ja/SpiderMonkey", "pl": "pl/SpiderMonkey" } ) }}

Revision Source

<p><strong>SpiderMonkey</strong> is Mozilla's <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a> engine written in C/C++. It is used in various Mozilla products, including Firefox, and is available under MPL/GPL/LGPL tri-license.</p>
<p><a href="/en/SpiderMonkey/1.8.5" title="SpiderMonkey 1.8.5 Release Notes">SpiderMonkey 1.8.5</a> is the most recent standalone source code release.&nbsp; It implements JavaScript 1.8.5, and it is largely the same engine that shipped with Firefox 4. You can download full source code here: <a class="external" href="http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz" rel="external nofollow" target="_blank" title="http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz">http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz</a> (MD5 checksum: <code>a4574365938222adca0a6bd33329cb32</code>).</p>
<h3 id="Documentation" name="Documentation">Documentation</h3>
<h4 id="General">General</h4>
<p><a href="/En/SpiderMonkey/Build_Documentation" title="SpiderMonkey
build documentation">SpiderMonkey Build Documentation</a> - How to get SpiderMonkey source code, build it, and run the test suite.</p>
<p><a href="/En/SpiderMonkey/Introduction_to_the_JavaScript_shell" title="Introduction to the JavaScript shell">Introduction to the JavaScript shell</a> - How to get, build, and use the JavaScript shell.</p>
<p><a href="/en/SpiderMonkey/Running_Automated_JavaScript_Tests" title="Running automated JavaScript tests">Running Automated JavaScript Tests</a> - How to run the JavaScript test suites.</p>
<p><a href="/en/SpiderMonkey/Creating_JavaScript_tests" title="en/SpiderMonkey/Creating JavaScript tests">Creating JavaScript tests</a> - How to add tests to the JavaScript test suites.</p>
<p><a class="link-https" href="https://wiki.mozilla.org/JavaScript:New_to_SpiderMonkey" title="https://wiki.mozilla.org/JavaScript:New_to_SpiderMonkey">New to SpiderMonkey</a> - A guide to hacking on SpiderMonkey.</p>
<p><a href="/en/SpiderMonkey/Setting_up_CDT_to_work_on_SpiderMonkey" title="en/SpiderMonkey/Setting up CDT to work on SpiderMonkey">Setting up CDT to work on SpiderMonkey</a> - How to configure CDT to work on the SpiderMonkey code.</p>
<p>&nbsp;</p>
<h4 id="JSAPI">JSAPI</h4>
<p><a href="/En/SpiderMonkey/JSAPI_User_Guide" title="en/JSAPI_User_Guide">JSAPI User Guide</a> - This guide provides an overview of SpiderMonkey and describes how you can embed engine calls in your applications to make them JavaScript-aware.</p>
<p><a href="/En/SpiderMonkey/JSAPI_Cookbook" title="En/SpiderMonkey/JSAPI_Phrasebook">JSAPI Phrasebook</a> - Shows the JSAPI translation of some commonly used JavaScript expressions and statements.</p>
<p><a href="/en/SpiderMonkey/JSAPI_Reference" title="en/SpiderMonkey/JSAPI_Reference">JSAPI Reference</a> - SpiderMonkey API reference.</p>
<p><a href="/en/SpiderMonkey/Bytecodes" title="en/SpiderMonkey/Bytecodes">Bytecode Reference</a> - SpiderMonkey bytecode reference.</p>
<p><a href="/en/SpiderMonkey/JS_Debugger_API_Guide" title="en/SpiderMonkey/JS Debugger API Guide">JS Debugger API Guide</a> - A user guide to the new JavaScript Debugger API introduced in Gecko 8.0 {{ geckoRelease("8.0") }}.</p>
<p><a href="/en/SpiderMonkey/JS_Debugger_API_Reference" title="en/SpiderMonkey/JS Debugger API Reference">JS Debugger API Reference</a> - API reference for the <code>Debugger</code> object introduced in SpiderMonkey 1.8.6, which corresponds to Gecko 8.0 {{ geckoRelease("8.0") }}.</p>
<p><a href="/en/JSDBGAPI_Reference" title="en/JSDBGAPI_Reference">JSDBGAPI Reference</a> - SpiderMonkey debugging API reference; this is for the debugging API from releases prior to SpiderMonkey 1.8.5, although it hasn't been removed.</p>
<h4 id="Tips.2C_tricks_and_philosophy">Tips, tricks and philosophy</h4>
<p><a href="/en/How_to_embed_the_JavaScript_engine" title="en/How_to_embed_the_JavaScript_engine">How to embed the JavaScript engine</a> - A bare-bones tutorial about embedding SpiderMonkey.</p>
<p><a href="/en/SpiderMonkey_Garbage_Collection_Tips" title="en/SpiderMonkey_Garbage_Collection_Tips">SpiderMonkey Garbage Collection Tips</a> - Tips on avoiding garbage collector pitfalls.</p>
<p><a href="/En/SpiderMonkey/Internals" title="en/SpiderMonkey_Internals">SpiderMonkey Internals</a> - A design overview and a file-by-file walkthrough of the implementation.</p>
<p><a href="/En/SpiderMonkey/Internals/Garbage_collection" title="En/SpiderMonkey/Internals/GC">SpiderMonkey Internals: GC</a> - Separate internals article on the GC.</p>
<p><a href="/En/SpiderMonkey/Internals/Thread_Safety" title="en/SpiderMonkey_Internals/Thread_Safety">SpiderMonkey Internals: Thread Safety</a> - How SpiderMonkey's request model works inside.</p>
<h3 id="Related_Topics" name="Related_Topics">Related Topics</h3>
<ul>
  <li><a href="/en/JavaScript" title="en/JavaScript">JavaScript</a></li>
  <li><a href="/En/SpiderMonkey/FOSS" title="en/SpiderMonkey/FOSS">FOSS projects using / based on Spidermonkey</a></li>
</ul>
<h3 id="Community" name="Community">Community</h3>
<p>Join the user mailing list: {{ DiscussionList("dev-tech-js-engine", "mozilla.dev.tech.js-engine") }}</p>
<p>Join the internals mailing list: {{ DiscussionList("dev-tech-js-internals", "mozilla.dev.tech.js-internals") }}</p>
<p>Questions? <a class="link-irc" href="irc://irc.mozilla.org/jsapi">Ask on IRC!</a></p>
<p>See also <a class="external" href="http://infomonkey.cdleary.com/" title="http://infomonkey.cdleary.com/">Infomonkey</a>.</p>
<p>Bugz? <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&amp;component=JavaScript%20Engine" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&amp;component=JavaScript Engine">File them</a> in <a class="link-https" href="https://bugzilla.mozilla.org/buglist.cgi?product=Core&amp;component=JavaScript%20Engine&amp;resolution=---&amp;list_id=92318" title="https://bugzilla.mozilla.org/buglist.cgi?product=Core&amp;component=JavaScript Engine&amp;resolution=---&amp;list_id=92318">Core -&gt; JavaScript Engine</a></p>
<p>{{ languages( {"zh-cn": "zh-cn/SpiderMonkey","de": "de/SpiderMonkey", "es": "es/SpiderMonkey", "fr":"fr/SpiderMonkey", "it": "it/SpiderMonkey", "ja": "ja/SpiderMonkey", "pl": "pl/SpiderMonkey" } ) }}</p>
Revert to this revision