My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Saby 是一个面向对象的动态脚本语言,允许非常自由的语法,使用 saby 可以写出非常直观的程序,当然,也可以写出非常难读的程序,主要特点包括:

  1. 没有关键字,只使用少量的几个符号来描述程序结构。
  2. 标示符可以包含空格,包含中文,包含除了描述程序结构所使用的那几个符号外的任何 Unicode 可打印字符。程序里将不会再充满下划线或中间有大写的长单词了。你可以使用 π 而不是 PI 来表示圆周率。
  3. 可扩展的语法。不是通过修改脚本引擎来扩展,而是直接在脚本中进行扩展!比如你可以用脚本定义一个 for 语句, 然后就像有关键字那样使用 for(i = 0; i < 10; ++i) { }。
  4. 面向对象。可以定义类,由类来产生对象,而不是像 JavaScript 那样写一个函数来动态生成对象。可以继承,可以定义和实现接口。
  5. 对象常量。像 C++ 中数字后加 L 就是 long 类型的常量,加 f 就是 float 类型常量一样,你定义类的时候也可以定义一种这个类的常量形式,比如一个 Person 类的表示男性常量可能是 ♂Mr.Wang Age28 ,表示女性的 ♀Miss.Sun Age60 等等。当然,也可用使用 JSON 的方式来描述一个常量对象。
  6. 类型检查。这是一个弱类型的动态语言,但是在定义参数的时候也可以选择限定能接受的类型,有一点像 PHP。
  7. 支持权限控制,属性可以是公开的,私有的,只读的等等。
  8. 操作符重载。
  9. 函数重载。
  10. 自动的基于引用计数的垃圾收集和手动的调用的 mark-sweep 垃圾收集算法。
Powered by Google Project Hosting