SpiderMonkey is the JavaScript and WebAssembly implementation library of the Mozilla Firefox web browser. The implementation behaviour is defined by the ECMAScript and WebAssembly specifications.
SpiderMonkey is intended to be embedded in other applications that provide host environments for JavaScript.
This is free and open source software.
Key Features
- Interpreter – the bytecode generated by the parser may be executed by an interpreter written in C++ that manipulates objects in the GC heap and invokes native code of the host (eg. web browser)
- JIT compiler – to speed up execution of bytecode, SpiderMonkey uses a series of Just-In-Time (JIT) compilers to generate specialized machine code (eg. x86, ARM, etc) tailored to the JavaScript that is run and the data that is processed. The WarpMonkey JIT replaces the former IonMonkey engine and is the highest level of optimization for the most frequently run scripts. It’s able to inline other scripts and specialize code based on the data and arguments being processed.
- Garbage collector – elements of this heap have a base C++ type of gc::Cell. Each round of garbage collection will free up any Cell that is not referenced by a root or another live Cell in turn.
- Implements the ECMA-262 specification (ECMAScript).
- WebAssembly – in addition to JavaScript, the engine is also able to execute WebAssembly (WASM) sources.
Website: spidermonkey.dev
Support: Code Repository
Developer: Mozilla Foundation
License: Mozilla Public License v2.0
SpiderMonkey is written in C++, Rust and JavaScript. Learn C++ with our recommended free books and free tutorials. Learn Rust with our recommended free books and free tutorials. Learn JavaScript with our recommended free books and free tutorials.
Related Software
| JavaScript Engines | |
|---|---|
| V8 | High-performance JavaScript and WebAssembly engine |
| SpiderMonkey | JavaScript and WebAssembly Engine, used in Firefox, Servo and more |
| QuickJS | Small and embeddable Javascript engine |
| Hermes | JavaScript engine optimized for React Native |
| Rhino | JavaScript in Java |
| JerryScript | JavaScript engine for the Internet of Things |
| GraalJS | ECMAScript-compliant JavaScript engine |
| Escargot | Lightweight JavaScript engine |
| Duktape | Embeddable JavaScript engine, focusing on portability and compact footprint |
| Elk | Tiny embeddable JavaScript engine |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.