我正在制作某种沙盒引擎,最终用户能够制作脚本以使他们的世界充满活力等等,目前我只关注LuaJava,因为我已经放弃了一些Lua的经验并发现它非常易读/简单的语言。但我也明白,根据个人偏好选择可能是一个坏主意,毕竟Lua意图嵌入到C中,因此性能不会是我想象的最好。
但是在看了一些替代方案(Groovy,Clojure)后,我发现语法难以理解/太抽象,Lua是我的第一次编程经验,甚至起初很难“得到”,我担心这些语言只会吓到我的废话,我再也不会看过脚本了。
是否有可以嵌入Java的脚本语言在简单性方面与Lua竞争?
修改 我的JavaScript问题,JPython是所有大括号等,因为起始用户符号倾向于看起来'硬'。同样对于python,还有用户需要理解的Object的概念,在这种情况下并没有那么有用。
func = function(arg)
print(arg)
end
这么简单......
答案 0 :(得分:6)
我认为JavaScript非常简单,并且可以通过Rhino轻松地嵌入到Java中。脚本既可以预编译,也可以通过javax.script
classes即时编译,它们用于连接Java平台的脚本引擎(Rhino就是其中之一)。
如果您喜欢Lua,那么有一个Lua for Java项目名为 - * cough * - Kahlua。他们列出“最常见操作的快速运行时”作为他们的目标之一。
编辑:重新编辑,我不会立即看到为什么:
func = function(arg)
print(arg)
end
比这更容易理解:
func = function(arg) {
print(arg);
};
...这是从Lua到JavaScript的字面翻译,预先假设您的平台上存在一个名为print
的函数。我通常会这样写:
function func(arg) {
print(arg);
}
...但是另一种方式对于大多数目的来说都没问题。
但你应该使用你感到满意的东西。
答案 1 :(得分:1)