Tamarin

Tamarin
開發者Adobe SystemsMozilla
源代码库 編輯維基數據鏈接
编程语言C++
操作系统跨平台
类型虛擬機器
许可协议GPLLGPLMPL
网站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]

參考資料

  1. ^ Compiling and Running applications. Mozilla. [2016-02-08]. (原始内容存档于2012-05-09). 
  2. ^ 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). 
  3. ^ Melanson, Mike. Open Up. Penguin.SWF — Just another Adobe Blog site. November 7, 2006 [September 3, 2010]. (原始内容存档于2008-07-04). 
  4. ^ Project Tamarin - Adobe's contribution to Mozilla. The Browser Den. [2018-06-24]. (原始内容存档于2008-10-11). 
  5. ^ Eich, Brendan. Mozilla 2. Brendan's Roadmap Updates. MozillaZine. October 13, 2006 [September 3, 2010]. (原始内容存档于2006-10-25). 
  6. ^ Resig, John. ActionMonkey. John Resig Blog. July 23, 2007 [September 3, 2010]. (原始内容存档于2017-04-21). 
  7. ^ JavaScript:ActionMonkey. MozillaWiki. Mozilla Foundation. September 4, 2008 [September 3, 2010]. (原始内容存档于2015-10-09). 
  8. ^ Blizzard, Christopher. A quick note on JavaScript engine components. Hacks.Mozilla.org. Mozilla Foundation. March 8, 2010 [September 3, 2010]. (原始内容存档于2018-06-03). 
  9. ^ Hoare, Graydon. State of Tamarin. mozilla.dev.tech.js-engine group. Google Groups. October 14, 2009 [September 3, 2010]. (原始内容存档于2013-06-13). 

外部連結