脚本语言 ES

C# 编写,解释执行,语法类似 JS,动态类型,支持闭包,支持热更新,效率比较低,目前暂时没有发现 BUG,实际游戏运行稳定,没有发现内存泄漏

Github:https://github.com/easily/EasyScript

测试代码:

function calc() {
print(2 + 3)
print(2 - 3)
print(2 * 3)
print(2 / 3)
}
function ctrl() {
n = 1
if (n > 0) {
print(""n > 0"")
} else {
print(""n < 0"")
}
arr = [1,2,3]
for (i = 0, arr.count) {
print(arr[i])
}
foreach (i in arr) {
print(i)
}
}
function closure() {
n = 100
f = func() {
n = n + 1
return n
}
for (i = 0, 10) {
print(f())
}
}
function main() {
print(""hello world!"")
calc()
ctrl()
closure()
}
main()

输出:

hello world!
5
-1
6
0.6666667
n > 0
1
2
3
1
2
3
101
102
103
104
105
106
107
108
109
110

纯代码逻辑效率是 C# 的 1 / 50,包含一定的反射大概是 1 / 80,纯数学运算是 1 / 150,纯数学运算有比较多的堆内存分配,比较慢

上一篇:转载:[转]如何学好3D游戏引擎编程


下一篇:npm 走 privoxy 代理经常出现 shasum check failed 的解决办法