Groovy 为什么Rhino不支持JVM应用程序?

Groovy 为什么Rhino不支持JVM应用程序?,groovy,jruby,jython,rhino,jvm-languages,Groovy,Jruby,Jython,Rhino,Jvm Languages,我想使用简洁、动态的语言为JVM开发一些应用程序。最流行的选择似乎是Jython、JRuby、Groovy,也许还有Clojure Rhino看起来很快也很稳定,但我没有看到关于Rhino发展的书籍,也没有什么讨论。为什么除了嵌入式脚本之外,JavaScript显然很少使用 编辑:我发现这个问题提供了关于Rhino开发可行性的信息。我从未使用过Rhino,因此我无法提供技术原因,但作为一名普通程序员,我可以提供一个流行心理学理论: javascript在其生命的大部分时间里都是严格意义上的客户端

我想使用简洁、动态的语言为JVM开发一些应用程序。最流行的选择似乎是Jython、JRuby、Groovy,也许还有Clojure

Rhino看起来很快也很稳定,但我没有看到关于Rhino发展的书籍,也没有什么讨论。为什么除了嵌入式脚本之外,JavaScript显然很少使用


编辑:我发现这个问题提供了关于Rhino开发可行性的信息。

我从未使用过Rhino,因此我无法提供技术原因,但作为一名普通程序员,我可以提供一个流行心理学理论:

javascript在其生命的大部分时间里都是严格意义上的客户端语言,至少在人们的头脑中是这样。更糟糕的是,它看起来很糟糕,因为使用javascript的网页上总是存在问题。这些问题不一定是语言的错误,而是浏览器如何实现它,如何组织dom,以及我们能够通过javascript访问什么。但在我们的头脑中,我们开始认为“javascript有问题”,甚至只是“javascript的功能有限”

因此,尽管有些人可以用javascript实现所有高级魔法,但我们中的许多人认为javascript是一种玩具语言,因为我们对web的早期记忆中,javascript所能做的只是在鼠标翻转时改变图像


最后,要使一种语言流行起来(特别是在缺乏大型企业赞助商的情况下),它需要比现有语言有一些切实的好处。已经有很多服务器端语言、框架和运行时在争夺人们的注意力。javascript有什么特别之处,以至于人们应该放弃对已经使用的X技术的投资?(这不是对js的挖苦,只是值得思考)

我使用Rhino作为用Java编写并在JVM上运行的生产级VoiceXML解释器的一部分。它在这方面非常有效。如果我从头开始重新实现这个解释器,我会倾向于使用JavaScript进行更多的开发。所以这绝对是一个选择。您需要探索周围的库对于您的应用程序领域来说有多成熟(您总是可以编写从JavaScript调用Java库的逻辑,但这可能太费劲了)

但我也同意@Peter Recore的观点:一定要再看看其他JVM语言。对象函数式Scala语言给我留下了深刻的印象:它的性能几乎和Java一样好,并且具有很强的表达能力


更新:关于JavaScript的好书有:和。您唯一需要的犀牛专用物品是。

另外,您考虑过scala吗?从严格意义上讲,它不是动态的,但它给了您动态语言的大部分好处。JavaScript语义非常接近,足以让我产生温暖的模糊感。