Java和脚本语言

时间:2011-06-26 12:39:26

标签: java scripting lua

我正在制作某种沙盒引擎,最终用户能够制作脚本以使他们的世界充满活力等等,目前我只关注LuaJava,因为我已经放弃了一些Lua的经验并发现它非常易读/简单的语言。但我也明白,根据个人偏好选择可能是一个坏主意,毕竟Lua意图嵌入到C中,因此性能不会是我想象的最好。

但是在看了一些替代方案(Groovy,Clojure)后,我发现语法难以理解/太抽象,Lua是我的第一次编程经验,甚至起初很难“得到”,我担心这些语言只会吓到我的废话,我再也不会看过脚本了。

是否有可以嵌入Java的脚本语言在简单性方面与Lua竞争?

修改 我的JavaScript问题,JPython是所有大括号等,因为起始用户符号倾向于看起来'硬'。同样对于python,还有用户需要理解的Object的概念,在这种情况下并没有那么有用。

func = function(arg)
   print(arg)
end

这么简单......

2 个答案:

答案 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)

您应该尝试JythonJRuby