Master's Thesis

ECMARef6: a reference interpreter for modern JavaScript

Rafael Rosa Rahal2023

Key information

Authors:

Rafael Rosa Rahal (Rafael Rosa Rahal)

Supervisors:

José Faustino Fragoso Femenin dos Santos (José Faustino Fragoso Femenin dos Santos)

Published in

06/12/2023

Abstract

O ECMAScript é uma linguagem de programação moderna altamente influente, amplamente utilizada em diversos ambientes, incluindo aplicações web no lado do servidor, desenvolvimento móvel e, especialmente, aplicações web no lado do cliente. Apesar de sua popularidade generalizada, a especificação da linguagem ECMAScript é extensa e complexa, o que representa desafios para desenvolvedores comuns compreenderem. Para enfrentar essa questão, apresentamos o ECMARef6, um interpretador de referência projetado para o ECMAScript 6, a versão mais popular da linguagem. Nossa implementação segue fielmente o padrão linha por linha e passa por testes rigorosos com o Test262, o conjunto oficial de testes de conformidade para o ECMAScript. O ECMARef6 representa o interpretador acadêmico mais abrangente direcionado ao ECMAScript 6, superando todas as outras implementações de referência acadêmicas em termos de cobertura de testes. Este projeto não apenas fornece uma implementação robusta para o ECMAScript 6, mas também estabelece as bases para a implementação das versões mais recentes do padrão ECMAScript. ECMAScript is a highly influential modern programming language widely utilized in various environments, including server-side web applications, mobile development, and particularly client-side web applications. Despite its widespread popularity, the ECMAScript language specification is extensive and complex, posing challenges for typical developers to comprehend. To address this, we present ECMARef6, a reference interpreter designed for ECMAScript 6, the most popular version of the language. Our implementation faithfully follows the standard line-by-line, and undergoes rigorous testing against Test262, the official conformance test suite for ECMAScript. ECMARef6 represents the most comprehensive academic interpreter targeting ECMAScript 6, surpassing all other academic reference implementations in terms of test coverage. This project not only provides a robust implementation for ECMAScript 6 but also lays the groundwork for the implementation of the more recent versions of the ECMAScript standard.

Publication details

Authors in the community:

Supervisors of this institution:

Degree Name

Mestrado em Engenharia Informática e de Computadores

Fields of Science and Technology (FOS)

electrical-engineering-electronic-engineering-information-engineering - Electrical engineering, electronic engineering, information engineering

Keywords

  • Interpretadores de Referência
  • Especificação de Linguagens
  • Linguagens Dinâmicas
  • ECMAScript
  • Reference Interpreters
  • Specification Language
  • Dynamic Languages
  • Test262

Publication language (ISO code)

eng - English

Rights type:

Embargo lifted

Date available:

04/05/2024

Institution name

Instituto Superior Técnico