Tamarin es un discontinuada software libre máquina virtual con la compilación en tiempo de ejecución de soporte (JIT) destinado a poner en práctica la cuarta edición de la ECMAScript lenguaje estándar (ES4). El código fuente de Tamarin se origina en ActionScript Virtual Machine 2 (AVM2) [1] desarrollado por Adobe Systems , como se introdujo en Adobe Flash Player 9 , que implementa el lenguaje de scripting ActionScript 3 . ActionScript Virtual Machine 2 se donó como código abierto a Mozilla Foundationel 7 de noviembre de 2006, para desarrollar Tamarin como una máquina virtual de alto rendimiento, con el apoyo de la amplia comunidad de Mozilla , para ser utilizada por Mozilla y Adobe Systems en la próxima generación de sus motores JavaScript y ActionScript con el objetivo final de unificar el lenguajes de secuencias de comandos en los navegadores web y la plataforma Adobe Flash y facilitan el desarrollo de aplicaciones web ricas y de mejor rendimiento . [2]
Desarrollador (es) | Adobe Systems y Mozilla |
---|---|
Repositorio | |
Escrito en | C ++ |
Sistema operativo | Multiplataforma |
Tipo | Máquina virtual para ECMAScript |
Licencia | Tri-licencia GPL , LGPL y MPL |
Sitio web | desarrollador |
Tamarin y Mozilla
El código fuente, incluyendo el compilador Just-In-Time y conservadora recolector de basura , fue donado a la Fundación Mozilla , el 7 de noviembre de 2006. [3] El código es aportado tri-licencia bajo los GPL , LGPL y MPL licencias que se desarrollado en el repositorio Mercurial de Mozilla . [4] El código aportado es de aproximadamente 135.000 líneas de código, [5] lo que la convierte en la mayor donación de código al proyecto Mozilla además de Netscape . [6]
Había planes para usar Tamarin como parte de Mozilla 2 [7] (y por lo tanto Firefox 4). El proyecto para integrar Tamarin y SpiderMonkey se llamó "ActionMonkey", [8] pero se canceló en 2008 [9] porque el intérprete de Tamarin resultó ser más lento que el de SpiderMonkey y porque los planes de desarrollo de ECMAScript cambiaron de ECMAScript 4 , que se implementó parcialmente para entonces ya existía el código fuente de Tamarin y estaba destinado a ser completado por los esfuerzos conjuntos de Adobe, Mozilla y su comunidad dentro del Proyecto Tamarin, [10] para ECMAScript Harmony . [11]
Tamarin sigue utilizándose en Adobe Flash Player , pero no ha reemplazado a SpiderMonkey como motor JavaScript de las aplicaciones de Mozilla.
La única parte de Tamarin que se utiliza en las aplicaciones modernas de Mozilla (es decir, Firefox 3.5+) a través de SpiderMonkey es NanoJIT , un módulo que se utiliza para generar código nativo cuando se realiza una compilación justo a tiempo . [12]
Lo que no es Tamarin
Adobe contribuyó con código para su ActionScript Virtual Machine 2 y el compilador JIT . El compilador de ActionScript también es de código abierto como parte de Adobe Flex . [13] También está CrossBridge , un compilador de código abierto C y C ++ .
Tamarin no es lo mismo que Adobe Flash Player , que sigue siendo de código cerrado. La máquina virtual Tamarin es solo una parte de Flash Player.
Proyectos relacionados
Dos proyectos relacionados con Tamarin se anunciaron el 25 de julio de 2007 en el discurso de apertura de Brendan Eich en The Ajax Experience West: IronMonkey y ScreamingMonkey. [14] [15] IronMonkey es un proyecto para mapear IronPython y IronRuby a Tamarin dirigido por Seo Sanghyeon. [16] El objetivo de ScreamingMonkey es permitir que Tamarin se ejecute en navegadores que no sean de Mozilla (lo que les permite comprender JavaScript 2), comenzando con Internet Explorer . El proyecto está dirigido por Mark Hammond. [17] Ninguno de los proyectos tuvo lanzamientos de calidad de producción y su estado actual no está claro.
Etimología
Tanto SpiderMonkey como Tamarin cumplen objetivos estrechamente relacionados y, por lo tanto, fueron apodados como monos (el mono araña y el tamarin , respectivamente).
Otras lecturas
- Página de Tamarin en MDN (Tamarin está obsoleto)
- Eich, Brendan (7 de noviembre de 2006). "Proyecto Tamarin" . Consultado el 25 de marzo de 2021 .
CTO de
Mozilla
- Hecker, Frank (7 de noviembre de 2006). "Adobe, Mozilla y Tamarin" . Archivado desde el original el 9 de noviembre de 2020.
Director ejecutivo de la Fundación Mozilla
- Double, Chris (20 de mayo de 2008). "Una rápida introducción al rastreo de Tamarin" . Consultado el 25 de marzo de 2021 .
Desarrollador de Mozilla
- Double, Chris (20 de mayo de 2008). "Implementación de métodos nativos en el rastreo de Tamarin" . Consultado el 25 de marzo de 2021 .
- Double, Chris (21 de mayo de 2008). "Ampliación del rastreo de Tamarin con Forth" . Consultado el 25 de marzo de 2021 .
- "Creación de perfiles de código generado e interpretado en tiempo de ejecución utilizando VTune Performance Analyzer" (PDF) . Intel. Archivado desde el original (PDF) el 27 de enero de 2012.
Referencias
- ^ http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/actionscript/articles/avm2overview.pdf
- ^ "Qué significa Tamarin para los desarrolladores" . Conexión de desarrollador de Adobe. 7 de noviembre de 2006. Archivado desde el original el 16 de marzo de 2013 . Consultado el 2 de enero de 2013 .
- ^ "Adobe y Mozilla Foundation para motor de secuencias de comandos de Flash Player de código abierto" . Centro de prensa de la Fundación Mozilla . San Francisco: Fundación Mozilla. 7 de noviembre de 2006 . Consultado el 3 de septiembre de 2010 .
- ^ "Proyecto Tamarin" . Fundación Mozilla . Consultado el 25 de marzo de 2021 .
- ^ Melanson, Mike (7 de noviembre de 2006). "Abrir" . Penguin.SWF: otro sitio de blogs de Adobe . Archivado desde el original el 4 de julio de 2008 . Consultado el 3 de septiembre de 2010 .
- ^ "Proyecto Tamarin - contribución de Adobe a Mozilla" . La guarida del navegador . Archivado desde el original el 11 de octubre de 2008.
- ^ Eich, Brendan (13 de octubre de 2006). "Mozilla 2" . Actualizaciones de la hoja de ruta de Brendan . MozillaZine. Archivado desde el original el 25 de octubre de 2006 . Consultado el 3 de septiembre de 2010 .
- ^ Resig, John (23 de julio de 2007). "ActionMonkey" . Blog de John Resig . Consultado el 3 de septiembre de 2010 .
- ^ "JavaScript: ActionMonkey" . MozillaWiki . Fundación Mozilla . 4 de septiembre de 2008 . Consultado el 3 de septiembre de 2010 .
- ^ "Introducción al proyecto Tamarin" . Comunidad de Mozilla . 21 de abril de 2008 . Consultado el 1 de enero de 2013 .
- ^ Blizzard, Christopher (8 de marzo de 2010). "Una nota rápida sobre los componentes del motor JavaScript" . Hacks.Mozilla.org . Fundación Mozilla . Consultado el 3 de septiembre de 2010 .
- ^ Hoare, Graydon (14 de octubre de 2009). "Estado de Tamarin" .
mozilla.dev.tech.js-engine
grupo . Grupos de Google . Consultado el 3 de septiembre de 2010 . - ^ "Compilación y ejecución de aplicaciones" . Mozilla . Consultado el 25 de marzo de 2021 .
- ^ Eich, Brendan (25 de julio de 2007). "Nuevos proyectos" . Actualizaciones de la hoja de ruta de Brendan . MozillaZine. Archivado desde el original el 14 de noviembre de 2010 . Consultado el 3 de septiembre de 2010 .
- ^ Resig, John (8 de agosto de 2007). "La revolución de las secuencias de comandos del navegador" . Blog de John Resig . Consultado el 3 de septiembre de 2010 .
- ^ "Tamarin: IronMonkey" . MozillaWiki . Fundación Mozilla . 20 de agosto de 2007 . Consultado el 3 de septiembre de 2010 .
- ^ "Tamarin: ScreamingMonkey" . MozillaWiki . Fundación Mozilla . 28 de mayo de 2008 . Consultado el 3 de septiembre de 2010 .
enlaces externos
- Página web oficial
- Proyecto Tamarin en www-archive.mozilla.org
- Tamarin en wiki.mozilla.org