《JavaScript: The First 20 Years》以上百页的篇幅,详细记述了 JavaScript 自 1995 至 2015 年间的演化故事。本项目将翻译其内容到中文社区,方便更多同学接触这份兼有收藏与研究价值的史料。
2020 年的 JavaScript,几乎可以算是世界上使用最广泛的编程语言了。这样一个在十天内仓促完成的产物,是如何一步步走到今天的呢?这份文献的两位重量级作者分别是 JS 之父 Brendan Eich 和主持 ES6 规范制定的 Allen Wirfs-Brock,他们整理出了这个自 1995 年语言诞生到 2015 年确定 ES6 标准为止,共计横跨了 20 年的历史。整份资料介绍的并不仅是技术细节层面的考证,更是个讲述人类如何在商业与技术上的竞争合作中促进产业发展的故事。
这个故事相当漫长而复杂。全文分为四个部分,每部分都对应 JavaScript 演化历程中的一个主要阶段。各部分之间还有一段简短的插曲,介绍彼时的开发者们是如何看待与使用 JavaScript 的。
这四个部分依次如下:
- 语言诞生(The Origins of JavaScript),介绍了 JavaScript 的创建与早期发展,包括语言的诞生背景、命名方式、初始特性及其设计理念等。这一节还追溯了它在 Netscape 与其他公司最初的演化,例如微软的 JScript。
- 创立标准(Creating a Standard),介绍了从 JavaScript 到 ECMAScript 标准的历程。这主要涵盖 JavaScript 标准化工作的启动、规范的创建、相关贡献者以及决策方式等。
- 改革失败(Failed Reformations),介绍了在 Eich 离开后,缺乏「仁慈独裁者」的 ECMAScript 委员会修改语言的失败尝试。这主要涉及委员会的分裂、对 ES4 的两轮投入,以及 Flash 与 ActionScript 在其中的渊源等。
- 继往开来(Modernizing JavaScript),介绍了 2009 年 ES5 与 2015 年 ES6 这两个成功标准背后的故事,主要包括对 ES5 与 ES6 的目标、重大基础性更改与重要新特性的介绍与回顾。
- 语言诞生
- 插曲:风评被害
- 创立标准
- 插曲:JavaScript 不需要 Java
- 改革失败
- 插曲:认真对待 JavaScript
- 继往开来
- 总结
- 附录
- 登场人物
- 登场组织
- 术语表
- 缩略语和首字母缩写词
- 时间线
- 第一部分
- 第二部分
- 第三部分
- 第四部分
- 1995 年 12 月 4 日的 JavaScript 发布公告
- 备注
- 参考文献
本文基于 CC-BY-NC 4.0 许可,不限制非商用转载。
Allen Wirfs-Brock and Brendan Eich. 2020. JavaScript: the first 20 years. Proc. ACM Program. Lang. 4, HOPL, Article 77 (June 2020), 189 pages. DOI:https://doi.org/10.1145/3386327