Tamarin
開發者 | Adobe Systems和Mozilla |
---|---|
源代碼庫 | |
編程語言 | C++ |
操作系統 | 跨平台 |
類型 | 虛擬機器 |
許可協議 | GPL、LGPL、MPL |
網站 | developer.mozilla.org/en/Tamarin |
Tamarin是一個自由的即時編譯(JIT)虛擬機器[1],旨在實現ECMAScript(ES4)語言標準規範。Tamarin的原始碼基於Adobe Systems開發的ActionScript Virtual Machine 2(AVM2),是Adobe Flash Player 9所使用的虛擬機器。
發展
2006年11月7日,ActionScript Virtual Machine 2宣佈開放原始碼,並將程式碼捐贈給Mozilla基金會[2],貢獻的代碼大約是135,000行代碼[3],成為自Netscape以來向Mozilla計畫捐贈的最龐大代碼[4]。
最初計畫將Tamarin作為Mozilla 2的一部分[5](後來的Firefox 4)。整合Tamarin和SpiderMonkey的計畫被稱為「ActionMonkey」[6],但在2008年被取消[7],原因是Tamarin的直譯結果比SpiderMonkey慢以及ECMAScript 4被棄用[8]。
Tamarin在Adobe Flash Player中繼續使用,最後並沒有取代SpiderMonkey作為Mozilla的JavaScript引擎。
SpiderMonkey引擎仍使用著Tamarin一部分的NanoJIT,這是用於執行即時編譯時產生原生碼的模塊[9]。
參考資料
- ^ Compiling and Running applications. Mozilla. [2016-02-08]. (原始內容存檔於2012-05-09).
- ^ Adobe and Mozilla Foundation to Open Source Flash Player Scripting Engine. Mozilla Foundation Press Center. San Francisco: Mozilla Foundation. 2006-11-07 [2010-09-03]. (原始內容存檔於2010-10-21).
- ^ Melanson, Mike. Open Up. Penguin.SWF — Just another Adobe Blog site. November 7, 2006 [September 3, 2010]. (原始內容存檔於2008-07-04).
- ^ Project Tamarin - Adobe's contribution to Mozilla. The Browser Den. [2018-06-24]. (原始內容存檔於2008-10-11).
- ^ Eich, Brendan. Mozilla 2. Brendan's Roadmap Updates. MozillaZine. October 13, 2006 [September 3, 2010]. (原始內容存檔於2006-10-25).
- ^ Resig, John. ActionMonkey. John Resig Blog. July 23, 2007 [September 3, 2010]. (原始內容存檔於2017-04-21).
- ^ JavaScript:ActionMonkey. MozillaWiki. Mozilla Foundation. September 4, 2008 [September 3, 2010]. (原始內容存檔於2015-10-09).
- ^ Blizzard, Christopher. A quick note on JavaScript engine components. Hacks.Mozilla.org. Mozilla Foundation. March 8, 2010 [September 3, 2010]. (原始內容存檔於2018-06-03).
- ^ Hoare, Graydon. State of Tamarin.
mozilla.dev.tech.js-engine
group. Google Groups. October 14, 2009 [September 3, 2010]. (原始內容存檔於2013-06-13).