解決方案
JavaScript 於 1995 年透過 Netscape 2.0 傳播開來,微軟很快便將其反向工程為 Internet Explorer 3.0 的 JScript。不到一年,開發者便開始遭遇兩者之間的互通性問題。
1996 年 11 月,在 Ecma International 的主持下,標準化該語言的工作正式展開。微軟的 Thomas Reardon 向新成立的 TC39 委員會說明,要讓 JScript 與 Netscape 保持相容有多麼困難,並強調制定正式規格的必要性。
TC39 在大約七個月內產出第一版 ECMA-262,於 1997 年 6 月獲得批准;由於商標問題排除了原本偏好的候選名稱,最終選定了 ECMAScript 這個名字。ISO/IEC 16262 隨後於 1998 年問世。JScript 與 JavaScript 最終都匯流到這項標準上,此後再也沒有競爭對手的瀏覽器語言能取代它。
達成了什麼
一份中立的規格讓競爭對手保持相容
為何奏效
中立的規格讓微軟與 Netscape 共用同一種語言。
七個月的工作,遏止了當時已開始醞釀的分裂。
快速通道的 ISO 採納賦予它正式的國際地位。
瀏覽器之間的賽局理論,讓任何新的競爭語言幾乎不可能出現。
可借鏡之處
當某項實質標準由單一廠商把持時,競爭對手便會各自分支;將規格移交給中立機構,能把一場克隆大戰轉化為人人都能在其上建構的共享平台。
後續發展
ECMAScript 是網路上最成功的標準之一;TC39 至今仍在演進它,而每個瀏覽器都實作相同的核心語言。
追溯依據
參考來源
- ECMA-262: The ECMAScript (JavaScript) is celebrating its 20th birthday Ecma International · ecma-international.org ·
- Brief History of ECMAScript Ecma International (archives) · archives.ecma-international.org
- JavaScript: The First 20 Years Proceedings of the ACM on Programming Languages (HOPL) · wirfs-brock.com