Ruby诞生

Matz 是一个专业的软件工程师,在日本有名的 open source 公司 netlab.JP 工作,而且他在日本也是一个高姿态的 open source 布道者。他参与了几个开源软件项目,包括 cmail,这是一个基于 emacs 的邮件用户代理,完全用 emacs lisp 编写。Ruby 也是他的第一个在日本以外的国家如此出名的作品。

在 1993 年的时候,有一次他和同事们谈论关于脚本语言(scripting language)的事情,Matz 深深的认识到了脚本语言的强大和可行性,他想也许脚本语言是他的方向。

由于 Matz 很早以前就对面向对象编程很感兴趣,所以他认为面向对象也会适合脚本语言编程。然后,他到网络上去找了一些相关的东西,并且发现了 perl5,当时它还没有发布,并且打算支持面向对象的特点,但是 Matz 发现这并不是他想找的东西,所以他放弃了把 perl 当作一个面向对象的脚本语言。

然后 Matz 转向了 Python。Python 是一个解释型的、面向对象 语言,但是 Matz 发现它并不能完全算作 “脚本” 语言。Matz 认为 Python 是面向对象和程序化语言(procedural programming)的混合产物。

Matz 希望的是一种比 Perl 强大,比 Python 更面向对象的语言,所以,他打算设计一个全新的自己的语言。Matz 的开发从 1993 年 2 月 24 日开始,同年夏天,第一个 Ruby 语言的 Hello World 程序成功运行,第一个 alpha 版本在 1994 年 12 月发布。

直到 1996 年都是 Matz 一个人在开发,从这时候开始 Ruby 社区也渐渐形成,尽管现在大部分的开发还是 Matz 自己来开发,但很多人都给了 Matz 有意义的帮助,包括提交 bug 和 patch 等。

Ruby 这个名字意为珍贵的宝石,千万不要认为是什么缩写,比如 PERL。当作者开始写 ruby 的时候,跟一个同事开玩笑说这个项目要以一个宝石的名字命名。那个同事就说 ”ruby”,就是一种美丽贵重的宝石的名字。所以作者用了这个名字,并且最后在官方发布版本中,也延续了这个名字。后来,作者发现珍珠(pearl)是六月的诞生石(birthstone,这个我不懂),ruby 是七月的诞生石,所以作者相信 ruby 是 perl 之后自己语言的一个好的名字。