Java和脚本语言

我正在制作一种沙盒引擎,最终用户能够创建脚本以使他们的世界变得动态等等,目前我只看了看 LuaJava,因为我有一些 Lua 经验,认为它是一种非常可读/易懂的语言。但我也知道只根据个人偏好来选择可能是不好的想法,毕竟 Lua 是嵌入到 C 中的,所以性能可能不是最好的。

但是在看了一些替代方案(Groovy、Clojure)后,我发现这些语法过于抽象,很难阅读。Lua 是我第一个编程经验,即使这对我来说也相当困难,我担心这些语言会吓坏我,我永远不会再考虑脚本的事情。

有没有能够嵌入到 Java 中并具有与 Lua 相媲美的简单性的脚本语言呢?

编辑 我的问题是 JavaScript、JPython 中全部都是大括号等,作为一个刚刚起步的用户,符号往往看起来很“难”。此外,对于 Python,用户需要理解对象的概念,在这种情况下并不是很有用。

func = function(arg)
   print(arg)
end

就是这么简单...

原文链接 https://stackoverflow.com/questions/6483968

点赞
stackoverflow用户157247
stackoverflow用户157247

我认为 JavaScript 非常简单,可以通过 Rhino 轻松地嵌入到 Java 中。脚本可以通过 javax.script 预编译或即时编译,这些类用于连接用于 Java 平台的脚本引擎(其中 Rhino 也是其中之一)。

不过如果你喜欢 Lua,那么有一个名为 Kahlua 的 Java Lua 项目。他们将“最常见的操作的快速运行时”列为其中一个目标。


编辑:关于您的编辑,我无法立即看出为什么这个:

func = function(arg)
   print(arg)
end

比这个更容易理解:

func = function(arg) {
   print(arg);
};

......这是从 Lua 直接翻译为 JavaScript 的代码,预设您的平台上存在名为 print 的函数。我通常会这样写:

function func(arg) {
   print(arg);
}

......但是对于大多数目的来说,其他方法也可以。但是您应该使用您习惯使用的方法。

2011-06-26 12:47:55
stackoverflow用户267587
stackoverflow用户267587

你应该尝试使用 JythonJRuby

2011-06-26 12:48:50