SpiderMonkey

from Wikipedia, the free encyclopedia
SpiderMonkey
Basic data

Maintainer Mozilla Foundation
developer Mozilla Foundation
Current  version 45
( March 8, 2016 )
operating system cross-platform
programming language C.
License MPL
German speaking No
https://developer.mozilla.org/de/docs/SpiderMonkey

SpiderMonkey is the code name for the first ever developed JavaScript - Engine , which by Brendan Eich of Netscape Communications released and later as Open Source was released. SpiderMonkey is now being further developed by the Mozilla Foundation .

Basics

SpiderMonkey is written in C and contains a compiler , interpreter , decompiler , a tool for automatic garbage collection and standard classes. However, it does not provide host environments such as B. Document Object Model (DOM).

The benefit of SpiderMonkey is to be integrated into other programs that provide host environments for JavaScript. The best-known programs are Mozilla Firefox and the Mozilla Application Suite / SeaMonkey , as well as Adobe Acrobat and Adobe Reader. SpiderMonkey is also the JavaScript engine from Yahoo Widgets (better known as "Konfabulator") and UOX3 (UOX), an emulator for the online game Ultima Online . Another well-known and creative use of the SpiderMonkey Javascript engine is open source - Suite Sphere , which consists of programs that are primarily intended for the designing of role-playing. The document-based database system CouchDB also executes JavaScript code via SpiderMonkey. SpiderMonkey and its sister engine Rhino have support for the ECMAScript for XML (E4X) standard implemented .

Further development

Between 2006 and 2008 attempts were made to integrate the Tamarin donated by Adobe to Mozilla into SpiderMonkey in order to obtain an improved engine that can be used by Mozilla and Adobe in parallel. At that time, Tamarin was expanded by Adobe to include an experimental optimization function called tracing , through which a speed advantage was hoped. The project called "ActionMonkey" was discontinued in 2008 because, among other things, the hoped-for speed improvements compared to SpiderMonkey were not achieved and, on the other hand, the capabilities for Tamarin / ActionMonkey already contained in SpiderMonkey should have been implemented anew.

TraceMonkey

Since 2008 SpiderMonkey has been expanded to include improved tracing functions under the project name "TraceMonkey". The new engine was first included in Firefox 3.5. In some cases, the new engine achieves a speed advantage of a factor of 20 to 40 compared to the previous version.

Hunter Monkey

JägerMonkey is a project that accelerates the JavaScript engine SpiderMonkey by optimizing the source code. It adds inline threading and uses Nitro's assembler , WebKit's JavaScript engine .

Versions

version Publication date Corresponding ECMAScript version Browser version Added functionality
Older version; no longer supported: 1.0 March 1996 Netscape Navigator 2.0
Older version; no longer supported: 1.1 August 1996 Netscape Navigator 3.0
Older version; no longer supported: 1.2 June 1997 Netscape Navigator 4.0–4.05
Older version; no longer supported: 1.3 October 1998 ECMA-262 1st + 2nd edition Netscape Navigator 4.06-4.7x
Older version; no longer supported: 1.4 Netscape Server
Older version; no longer supported: 1.5 November 2000 ECMA-262 3rd edition Netscape Navigator 6, Firefox 1.0
Older version; no longer supported: 1.6 November 2005 Firefox 1.5 additional array methods, array and string generics, E4X
Older version; no longer supported: 1.7 October 2006 Firefox 2.0 iterators and generators, let statement, array comprehensions, destructuring assignment
Older version; no longer supported: 1.8 June 2008 Firefox 3.0 generator expressions, expression closures
Older version; no longer supported: 1.8.5 March 2011 ECMA-262 5th edition Firefox 4.0 JSON support
Older version; no longer supported: 1.8.8 January 2012 Firefox 10.0
Older version; no longer supported: 17th November 2012 Firefox 17.0
Older version; no longer supported: 24 September 2013 Firefox 24.0
Older version; no longer supported: 31 July 2014 Firefox 31.0
Older version; no longer supported: 38 May 2015 Firefox 38.0
Older version; no longer supported: 45 March 2016 Firefox 45.0
Older version; no longer supported: 52 March 2017 Firefox 52.0
Current version: 60 May 2018 Firefox 60.0

swell

  1. developer.mozilla.org .
  2. ^ Mozilla Corporation: JavaScript: ActionMonkey , accessed February 20, 2009, English
  3. Andreas Gal, Michael Bebenita, Mason Chang and Michael Franz: Making the Compilation "Pipeline" Explicit: Dynamic Compilation Using Trace Tree Serialization (PDF; 359 kB)
  4. Mozilla Corporation: JavaScript: TraceMonkey , accessed February 20, 2009, English
  5. Brendan Eich: TraceMonkey: JavaScript Lightspeed ( Memento from September 6, 2008 in the Internet Archive ), August 23, 2008, English
  6. heise Newsticker: Firefox developers plan a wide version jump , March 6, 2009
  7. http://arstechnica.com/news.ars/post/20080822-firefox-to-get-massive-javascript-performance-boost.html
  8. bailopan.net blog in November 2016
  9. wiki.mozilla.org JaegerMonkey June 22, 2010, accessed February 16, 2018
  10. New in JavaScript 1.6 . Retrieved July 28, 2015.

Web links