JavaScript之父 Brendan Eich 出任 Mozilla CEO

3月24日,Mozilla宣布联合创始人和 CTO Brendan Eich (JavaScript 之父)被任命 为Mozilla CEO。

《JavaScript之父 Brendan Eich 出任 Mozilla CEO》

Brendan Eich 是 Mozilla 的联合创始人,同时也是 JavaScript 之父。

1995年,在 Netscape 公司工作的 Brendan Eich 受命开发一个在浏览器上运行的客户端脚本语言。当时 Netscape 交给 Brendan Eich 的任务是开发一个看上去像 Java 的脚本语言。当时,由于 Netscape 正和 Sun 谈合作,让 Netscape 浏览器支持 Java,因此有些员工怀疑是否有必要开发一种新语言。Netscape 的另一些开发者则打算开发一个在服务器端运行的 HTML 模板语言,类似 PHP,他们把这个语言称作 LiveWire。为了打消大家的顾虑,Brendan Eich 花了 10 天时间做出了一个原型 Mocha 。 两周不到的时间就做出了一个语言的编译器和运行时环境,小伙伴们都惊呆了。在1995年秋季,Netscape 的市场部门将 Mocha 命名为 LiveScript,和服务器端的 LiveWire 保持一致。由于当时 Java 比较时髦,Netscape 和 Sun 合作,在 1995 年 12 月将其改名为 JavaScript,希望能沾上一点光。实际上,JavaScript 的思想主要来自 SchemeSelf

Brendan Eich 曾在 JSConf 2010 上介绍过JavaScript的历史,其中透露了一些有关 JavaScript 以及他本人的趣闻:

  • Brendan Eich 在 1977 年的时候和 John McCarthy (Lisp 之父)见过面。
  • Brendan Eich 的发型主要受 Morrissey 影响。
  • JS 的 function 关键字确实源于 AWK。

由于 NodeJS 的兴起,JavaScript 的影响力从前端(浏览器端)向后端(服务器端)发展。NodeJS 的兴起在 Brendan Eich 的意料之中:

我并不对 NodeJS 的出现感到意外,因为 Netscape 当年就想做一个类似的东西。开发者们喜欢全栈的、覆盖前后端的、单语言的开发模式。

Brendan Eich 所说的“Netscape 当年就想做一个类似的东西”就是指上文提到的 LiveWire。LiveWire 使用的是阻塞的 I/O,所以伸缩性并不好。而 NodeJS 默认使用异步处理,避免了这个问题。Brendan Eich 认为 NodeJS 内置非阻塞 I/O 是一个明智的选择。他对 NodeJS 短小精悍的语言核心和优秀的模块系统也倍加赞誉。

另一方面,由于 JavaScript 性能的持续改进,有越来越多的语言支持编译到 JavaScript 执行。因此有人说:“JavaScript 是 Web 的汇编。” Brendan Eich 对此的看法是:

几年前,我曾说过“JS 是 Web 的x86”(好像是在一次 JSConf 上),不过我不敢说我是第一个这么说的。Nick Thompson 今年(2011)也在 Hacker News 中这么说过。
关键在于,JS确实在按照我们想的,越来越往低级方向发展了。但它也具备高级的特性。
Shaver说得没错,汇编缺少可靠的宏处理器,因此不适合程序员,也不够安全。但JS可不是这样。所以,这个比喻需要加点限制条件,不然就要闹出笑话来了。
无论从高级函数式编程还是内存安全角这个角度看,还是从低级特性,像类型化数组以及即将成为现实的ES中类型化数组的扩展、二进制数据,等等来说,JS都是一个比汇编更加强大的编程语言。当然了,内存安全是首要的区别。

近两年, JavaScript 的演进非常迅速。 ECMAScript 6 标准的公布,昭示着 JavaScritp 激动人心的未来。

编撰 SegmentFault

    原文作者:weakish
    原文地址: https://segmentfault.com/a/1190000000447224
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞