A Comparative Study of the Specification Processes of ECMAScript and TypeScript

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Bachelor's thesis

Department

Major/Subject

Mcode

SCI3027

Language

en

Pages

31

Series

Abstract

JavaScript was developed in 1995 to enhance interactivity on web pages, and today it is one of the most widely used programming languages in the world. Its official standard is ECMAScript, which is maintained by Technical Committee 39 (TC39) of ECMA International. Based on ECMAScript, Microsoft's open source project TypeScript includes all the features of JavaScript, with its most significant addition being static typing. This helps identify errors during development rather than at runtime. This thesis examines the development phases of ECMAScript and TypeScript before a feature is included in the official specification. The work was conducted as a literature review, with key sources including scientific articles, official ECMAScript specification, documentation maintained by the technical committee, as well as documents from Microsoft and the open source community. The aim of the research is to answer the question: How do the specification processes of ECMAScript and TypeScript differ from each other? The ECMAScript development is a well-defined six-stage standardization process. A proposal is advanced by a designated champion appointed by the ECMA organization and each stage requires approval from the TC39 commitee. In contrast to ECMAScript, TypeScript does not follow a formal specification process. Its development is more pragmatic and led by Microsoft. New features arise from practical needs without a structured phase model or committee process. This allows for a more responsive approach to the need of the developer community.

JavaScript kehitettiin vuonna 1995 verkkosivujen interaktiivisuuden lisäämiseen, ja nykyään se on yksi maailman käytetyimmistä ohjelmointikielistä. Sen virallinen standardi on ECMAScript, jonka kehityksestä vastaa ECMA Internationalin tekninen komitea TC39. ECMAScriptin pohjalta kehitetty Microsoftin avoimen lähdekoodin projekti TypeScript sisältää kaikki JavaScriptin ominaisuudet, ja sen merkittävin lisä on staattinen tyypitys, joka auttaa tunnistamaan virheitä jo kehitysvaiheessa sen sijaan, että ne ilmenisivät vasta ajoaikana \emph{(engl. runtime)}. Työssä tarkastellaan ECMAScriptin ja TypeScriptin kehitykseen liittyviä vaiheita ennen kuin ominaisuus sisällytetään viralliseen spesifikaatioon. Työ toteutettiin kirjallisuuskatsauksena, jossa keskeisenä aineistona käytetään tieteellisiä artikkeleita, ECMAScriptin virallisia spesifikaatoita, teknisen komitean ylläpitämää dokumentaatiota sekä Microsoftin ja avoimen lähdekoodiyhteisön dokumentteja. Tutkimuksen tavoitteena on vastata kysymykseen: Miten ECMAScriptin ja TypeScriptin spesifikaatioprosessit eroavat toisistaan? ECMAScriptin kehitysprosessi on tarkasti määritelty kuusivaiheinen standardointipolku. Ehdotuksen vie eteenpäin ECMA organisaation nimeämä vastuuhenkilö \emph{(engl. champion)} sekä jokainen vaihe vaatii TC39-komitean hyväksynnän. Toisin kuin ECMAScript, TypeScript ei noudata muodollista spesifikaatioprosessia. TypeScriptin kehitys on pragmaattisempaa ja sitä johtaa Microsoft. Uudet ominaisuudet syntyvät käytännön tarpeista, ilman virallista vaiheistusta tai komiteaprosessia. Tämä mahdollistaa reagoinnin kehittäjäyhteisön tarpeisiin.

Description

Supervisor

Savioja, Lauri

Thesis advisor

Vepsäläinen, Juho

Other note

Citation