Ruby是一种解释型的方便快捷的面向对象脚本语言,它是日本的Yukihiro
Matsumoto(人们都叫他Matz.) 于1993年2月24日首次发布的。它从Perl, Eiffel那里吸收了很多特性,
使之很适合用来文本文件处理和进行系统管理任务,并且完全面向对象。它的语法简单明快,可扩展并且可以跨平台。Ruby是完全自由开放的,意思是我们不仅可以免费得到,而且可以自由地使用、复制、修改和分发它。
基本特色
1.Ruby的语法简单,部分语法是从Eiffel和Ada那里得到灵感的
2.Ruby拥有异常处理机制,就像Java或Python一样,使之处理异常和错误更简单
3.Ruby的操作符其实是方法,你可以很容易地重新定义它们。
4.Ruby是一种完整的纯面向对象语言(OOL)。这就是说所有的数据在Ruby里面都是对象,不是像Python或Perl那样,而是像Smalltalk那样的纯面向对象(没有什么例外)。比如:在Ruby里面,数字1是类Fixnum的一个实例。
5.Ruby“故意地”使用单继承机制,但是它有模块(Modules)的概念(在Object-C里面叫Categories)。模块是方法的集合,它是一个比多重继承更清晰的解决方案。多重继承很复杂,比起单继承来它用得不是很经常。(不要在这里提起C++,C++因为强类型机制使得它没有其他选择。)
6.Ruby有真正的闭包机制,不仅仅是匿名函数,而且还实现了变量绑定。
7.Ruby在它的特性中加入了程序块(blocks)的概念(包含在"{......}"或者"do.....end"之间的代码),这些程序块可以传递给方法,或者转换成闭包。
8.Ruby拥有一个真正的“标记-清除”(mark and sweep)式的垃圾收集器,它对所有Ruby对象起作用
9.在Ruby中写C语言扩展比Perl或者Python中更容易,这部分是因为垃圾收集器的原因,部分是因为它好用的扩展API接口。Ruby中也有SWIG接口。