Tamarin fue un proyecto de máquina virtual para ECMAScript desarrollado inicialmente por Adobe Systems en colaboración con Mozilla. Su objetivo era proporcionar un motor de ejecución de alto rendimiento basado en la máquina virtual utilizada en ActionScript, con la intención de integrarlo en el motor JavaScript SpiderMonkey como parte del desarrollo de ECMAScript.

El proyecto fue anunciado en 2006 tras la liberación del código fuente de la ActionScript Virtual Machine (AVM2). Sin embargo, debido al abandono de la especificación ECMAScript y a cambios estratégicos dentro de Mozilla, Tamarin no llegó a integrarse oficialmente en SpiderMonkey y fue progresivamente abandonado.

Historia En noviembre de 2006, Adobe anunció la liberación del código fuente de AVM2, la máquina virtual que ejecutaba ActionScript en Adobe Flash Player, bajo un esquema de trilicencia (MPL/GPL/LGPL).

El plan inicial consistía en

Integrar Tamarin dentro de SpiderMonkey. Implementar características avanzadas previstas para ECMAScript . Incorporar compilación Just-In-Time (JIT) para mejorar el rendimiento. Unificar el desarrollo de motores JavaScript entre Adobe y Mozilla.

Sin embargo, el desarrollo de ECMAScript generó desacuerdos en el comité ECMA International (TC39), lo que llevó a la cancelación de dicha especificación en favor de una evolución incremental que culminó en ECMAScript (2009) y, posteriormente, ECMAScript 2015.

Como consecuencia, Mozilla optó por continuar el desarrollo independiente de SpiderMonkey, introduciendo sus propios compiladores JIT como TraceMonkey e IonMonkey.

Objetivos técnicos Entre los objetivos técnicos principales del proyecto se encontraban:

Integración del recolector de basura de Tamarin con SpiderMonkey. Adaptación del compilador JIT a múltiples arquitecturas de hardware. Implementación parcial de un compilador ECMAScript autoalojado (self-hosting). Mejora significativa del rendimiento en aplicaciones web complejas.

Cancelación y legado Tamarin perdió relevancia tras el abandono de ECMAScript 4 y el avance independiente de los motores JavaScript modernos. Con la discontinuación oficial de Adobe Flash Player en 2020, el proyecto quedó definitivamente obsoleto.

Actualmente, Tamarin se considera un proyecto histórico dentro de la evolución de los motores JavaScript y del ecosistema ECMAScript.

Véase también

SpiderMonkey V8 (motor de JavaScript) JavaScriptCore ECMAScript

Referencias

Enlaces externos

Repositorio archivado en GitHub

Proyectos relacionados Dos proyectos relacionados con Tamarin se anunciaron el 25 de julio de 2007 en el "Brendan Eich's keynote at The Ajax Experience West"; estos fueron IronMonkey y ScreamingMonkey.

IronMonkey es un proyecto para mapear IronPython y IronRuby a Tamarin. IronMonkey está dirigido por Sanghyeon Seo.

El objetivo de ScreamingMonkey es permitir a Tamarin ejecutarse dentro de otros navegadores, además de Mozilla, iniciando con Internet Explorer. CreamingMonkey está dirigido por Mark Hammond.

Referencias

Enlaces externos Página del proyecto Documentación de Tamarin Proyecto Tamarin

Categoría:Mozilla Categoría:Software libre Categoría:Software beta