- 论坛徽章:
- 0
|
大家好,我的主要目标是利用这个脚本语言实现一套HTPC平台。所以目前的主要任务是编写明语言的SDL,libdbi,libxine库。目前发布的第一版功能有限,文档也较少,主要是想听取有兴趣的同志的意见,在语言中加入更有效的特性。
明语言的语法设计的主要思路是:
1. OOP,多重继承,运算符重载,这些和python,ruby比较像.
#多重继承
class Child | Parent1, Parent2 {
#重载加法
function __add {
| this, arg1
...
}
}
2. 对闭包的支持.不同于javascript,严格区分函数和闭包.利用闭包实现各种常用迭代器.
#闭包迭代
$list.forEach {
| v
print(v)
}
3. 垃圾收集器进行内存管理.
4. 强化结构化数据构造功能,代替一般程序中用XML数据构造,特别是针对复杂界面的构造.
#构造一个窗口
$mywin=Window().{
.title="Hello!"
.(x,y,w,h)=0,0,640,480
#加入按钮OK
@Button().{
.caption="OK"
function on_press {
|this
print("OK\n")
$mywin.close()
}
}
#加入按钮Cancel
@Button().{
.caption="Cancel"
function on_press {
|this
print("OK\n")
$mywin.close()
}
}
} |
|