JavaScript: the first 20 years
@article{WirfsBrock2020JavaScriptTF, title={JavaScript: the first 20 years}, author={Allen Wirfs-Brock and Brendan Eich}, journal={Proceedings of the ACM on Programming Languages}, year={2020}, volume={4}, pages={1 - 189} }
How a sidekick scripting language for Java, created at Netscape in a ten-day hack, ships first as a de facto Web standard and eventually becomes the world's most widely used programming language. This paper tells the story of the creation, design, evolution, and standardization of the JavaScript language over the period of 1995--2015. But the story is not only about the technical details of the language. It is also the story of how people and organizations competed and collaborated to shape the…
Figures from this paper
6 Citations
JEST: N+1-Version Differential Testing of Both JavaScript Engines and Specification
- Computer Science2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE)
- 2021
This paper proposes a novel N+1-version differential testing for modern JavaScript engines and ECMAScript, the language specification describing the syntax and semantics of JavaScript in a natural language and actualizes the approach for the JavaScript programming language via JEST.
Promises are made to be broken: migrating R to strict semantics
- Computer ScienceProc. ACM Program. Lang.
- 2021
A dynamic analysis is reported on that infers strictness signatures for functions to capture both intentional and accidental laziness and over 99% of the inferred signatures were correct when tested against clients of the libraries.
Automated Refactoring of Legacy JavaScript Code to ES6 Modules
- Computer ScienceJ. Syst. Softw.
- 2021
Ten Million Users and Ten Years Later: Python Tutor’s Design Guidelines for Building Scalable and Sustainable Research Software in Academia
- Computer ScienceUIST
- 2021
This work proposes a method for building research software with scale and sustainability in mind so that it can organically grow a large userbase and enable longer-term research.
A Web-Based Framework for Distributed Music System Research and Creation
- Computer ScienceJournal of the Audio Engineering Society
- 2020
The novel distributed state management system dedicated at simplifying the implementation of remote control and monitoring interfaces and the plug-in system implemented to improve the extensibility of the framework and foster composition of dedicated functionalities are described.
Development of electronic record-keeping software for remote participation in Large Volume Plasma Device upgrade using Angular 2 and NodeJS web technologies.
- Computer ScienceThe Review of scientific instruments
- 2021
The literature survey of similar developments at other places, requirements, scopes, development artifacts, adapted tools and technologies, obtained results from actual plasma discharges of LVPD, and future enhancements are discussed.
References
SHOWING 1-10 OF 631 REFERENCES
JavaScript at ten years
- Computer ScienceICFP '05
- 2005
This talk presents the tumultuous history of JavaScript, from its first appearance in Netscape 2 beta releases in the fall of 1995 through the present, with emphasis on the unvarnished, real-world…
Status report: specifying javascript with ML
- Computer ScienceML '07
- 2007
The design and specification of JavaScript is described and the experience so far using Standard ML for this purpose is described.
Scripting: Higher-Level Programming for the 21st Century
- Computer ScienceComputer
- 1998
This article explains why scripting languages will handle many of the programming tasks in the next century better than system programming languages.
The Java Language Specification
- Computer Science, Linguistics
- 1996
The Java Language Specification, Second Edition is the definitive technical reference for the Java programming language and provides complete, accurate, and detailed coverage of the syntax and semantics of the Java language.
Modules for JavaScript Simple, Compilable, and Dynamic Libraries on the Web
- Computer Science
- 2011
The design of a module system for JavaScript is presented, currently the basis for the module system in the next version of the JavaScript standard, and provides a simple model for programmers and supports developing both client- side applications in the browser as well as standalone, server-side applications.
Bringing the web up to speed with WebAssembly
- Computer SciencePLDI
- 2017
The motivation, design and formal semantics of WebAssembly are described, some preliminary experience with implementations are provided, and it is described how WebAssembly is an abstraction over modern hardware, making it language-, hardware-, and platform-independent, with use cases beyond just the Web.
Emscripten: an LLVM-to-JavaScript compiler
- Computer ScienceOOPSLA Companion
- 2011
This work presents and proves the validity of Emscripten's Relooper algorithm, which recreates high-level loop structures from low-level branching data, and opens up two avenues for running code written in languages other than JavaScript on the web.
Common Lisp The Language
- Education
- 2016
The common lisp the language is universally compatible with any devices to read and is available in the authors' digital library an online access to it is set as public so you can get it instantly.
Cross-Origin JavaScript Capability Leaks: Detection, Exploitation, and Defense
- Computer ScienceUSENIX Security Symposium
- 2009
This work identifies a class of Web browser implementation vulnerabilities, cross-origin JavaScript capability leaks, which occur when the browser leaks a JavaScript pointer from one security origin to another and proposes an approach to mitigate this class of vulnerabilities by adding access control checks to browser JavaScript engines.