我正在考虑在JVM上出现不同的非Java语言的必要性。除了语法糖和内置函数之外,它们中的任何一个是否实际上都利用了JVM的某个角落,而这些角落还没有被Java语言所窥探?
以下不是我问题的一部分;但这就是为什么我想知道这个:
我已经是一名Java开发人员超过10年了,唯一的“java-tiredness”在我的大部分时间里悄然流传,就是它的冗长。现在推动我使用一种不那么冗长的类似Java的编程语言(具有功能/脚本风格)的原因,这会不时地消除我的疲惫。
在这里,浏览了Scala / Groovy之后(不是很多Clojure);我强烈认为,如果我真的希望学习另一种编程语言,而不是废弃Java,而是为我现有的编程工具增加真正的价值,那么Python会更好。
答案 0 :(得分:2)
除了语法糖和内置函数之外,它们中的任何一个是否真正利用了JVM的某个角落,而Java语言还没有这样做?
Java已添加invokedynamic
以专门用于动态非Java JVM语言。 Java 8以有限的方式使用invokedynamic
用于lambda表达式,但是这个指令真正与Groovy,JRuby等一起使用。
唯一的' java-tiredness'这已经在我的大时间里徘徊,是它的冗长
Lambda和Java 8强大的类型推断消除了大量的样板和冗长。事实上,今天很多人反对一些面向lambda的习语的 tersity 。
如果我真的想学习另一种编程语言,我强烈感觉像Python这样的东西会更好
一定要学习Java之外的其他语言,不要留下单一的语言。