[ Home | Weather | Wiki | RSS | HN | xkcd ] [ Search | Settings | About ]
[ Related articles | Random article | Open in Wikipedia ]
Table of contents
- Tamarin and Mozilla
- What Tamarin is not
- Related projects
Tamarin and Mozilla
The source code, including the just-in-time compiler and conservative garbage collector, was donated to the Mozilla Foundation on November 7, 2006. The contributed code is tri-licensed under the GPL, LGPL, and MPL licenses to be developed in Mozilla's Mercurial repository. The contributed code is approximately 135,000 lines of code, making it the largest single donation of code to the Mozilla project besides Netscape itself.
There were plans to use Tamarin as part of Mozilla 2 (and therefore Firefox 4). The project to integrate Tamarin and SpiderMonkey was called "ActionMonkey", but was canceled in 2008 because Tamarin's interpreter turned out to be slower than SpiderMonkey's and because the plans of ECMAScript development shifted from ECMAScript 4, which was partially implemented by then existing Tamarin source code and was meant to be completed by joined efforts of Adobe, Mozilla and its community within the Tamarin Project, to ECMAScript Harmony.
The only part of Tamarin used in modern Mozilla applications (i.e. Firefox 3.5+) via SpiderMonkey is NanoJIT, a module that is used to generate native code when performing just-in-time compilation.
What Tamarin is not
Adobe contributed code for its ActionScript Virtual Machine 2 and the JIT compiler. The ActionScript compiler is also open source as a part of Adobe Flex. There is also CrossBridge, an open source C and C++ compiler.
Tamarin is not the same as Adobe Flash Player, which remains closed source. The Tamarin virtual machine is only a part of Flash Player.
Both SpiderMonkey and Tamarin fulfill closely related goals and so were given names derived from types of monkeys (the spider monkey and the tamarin, respectively).
Wikipedia is available under the Creative Commons Attribution-ShareAlike License 3.0.
These pages best viewed with Netscape Navigator 1.1 or later.