Optimal Language Design is Hard: A Case Study in ECMAScript (JavaScript) Standardization
In addition to requirements of a purely technical nature, the evolution of widely adopted programming languages is often governed by preferences of individual members---either persons or organizations---of the language maintenance team, who may associate issues with particular design aspects. For example, when adding a new primitive data type to a language, language designers may suggest alternative semantics for equality to existing data types, as well as explicitly specify issues they wish to avoid (such as inconsistent behavior among number-like types). The decision-making process can span over multiple years and can be highly unstructured, and in a dynamic and distributed language design team, the cumulated understanding of previously discussed design alternatives can thus be lost over time.
Authors
- Mikhail Barash (ORCID: https://orcid.org/0000-0002-7067-2588)
- Yury Nikulin (ORCID: https://orcid.org/0000-0001-6409-9423)
- Philipp Riemer
Institutions
- University of Turku (FI)
- University of Bergen (NO)
- Leipzig University (DE)
Publication Details
- Published
- 2025-06-12
- DOI
- https://doi.org/10.1145/3732771.3742715
- Primary Topic
- Logic, programming, and type systems
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- Turun Yliopisto