Master's Thesis
A New Language Server for the ECMAScript Specification Language
— 2024
Key information
Authors:
Supervisors:
Published in
November 7, 2024
Abstract
JavaScript is one of the most popular programming languages today and has become the de facto standard for programming client-side web applications, supported by all browsers. To ensure that all browsers implement JavaScript consistently, the JavaScript committee established the ECMAScript Standard, a specification of the JavaScript syntax and semantics written in English. Over the years, the ECMAScript Standard has become increasingly complex and hard to modify. In order to support the management and extension of the ECMAScript Standard, the ECMA-SL project introduced a formal specification language that mirrors its informal meta-language. Using this language, the ECMA-SL team developed reference implementations of various versions of the ECMAScript Standard. However, its lack of adequate editor support makes using ECMA-SL extremely challenging. To address this issue, we developed ESL-LS, a language server for the ECMA-SL language that provides various features to support coding in ECMA-SL, including error diagnostics, go-to-definition, and automatic code completion. By using the Language Server Protocol, our language server remains independent of any specific IDE, thereby extending ECMA-SL support to many IDEs. Our evaluation demonstrates that the language server performs well, with response times that are imperceptible to users, and is useful, having received excellent feedback from the few existing ECMA-SL developers.
Publication details
Authors in the community:
Ricky Xu
ist195664
Supervisors of this institution:
Fields of Science and Technology (FOS)
electrical-engineering-electronic-engineering-information-engineering - Electrical engineering, electronic engineering, information engineering
Publication language (ISO code)
eng - English
Rights type:
Embargo lifted
Date available:
September 5, 2025
Institution name
Instituto Superior Técnico