了解JVM语言

为什么有这么多jvm语言?
class文件可以实现语言无关性,在设计时就考虑了不只针对Java而且可以从其他语言编译成class文件。jvm解释或编译执行class文件可以实现平台无关性,可以跨平台

NetRexx

Java领域的脚本语言先驱者,IBM并没有开源,近乎绝迹。

Jython

(最初名为‘JPython’)原本立志成为Python抢占JVM环境的急先锋,其创始人Jim Hugunin被微软挖至麾下,他自然也就把工作重点转向Python与.NET环境的结合(这就是IronPython项目)

Groovy

Groovy最初的定位是JSR(即Java规范请求),它的设计目的在于为开发者提供一套自助式语法解决方案,运行速度缓慢

Scala

Scala的基本语法能够作为Java的替代品直接使用,而其中更多高级功能则可以用来编写功能性代码
该语言内置一套Scala库,那些一直以来令开发人员头痛不已的传统并行编程问题在这里基本得到了有效解决。
至于它的缺点,除了有些晦涩的代码构成之外,它所采用的编译器与本文中其它语言相比在处理速度方面实在有些孱弱;另外过去曾出现过新版本无法与旧版本相兼容的问题。

JRuby与Mirah

这两种语言由同一个团队所设计,二者都试图将Ruby语言引入JVM环境,语言特色也都曾经发生过转变。如今Ruby on Rails框架已经可以顺利运行于JVM之中。Ruby与Java环境之间的互操作性极为优异,而且Ruby Gems与Java库的运行都称得上简洁高效,执行结果令人赞叹。
Mirah与JRuby在功能上基本一致,只是与Ruby语言的关联性更弱一些。这就使得开发人员能够带着Mirah一个“JAR文件”走天下,而不必费神安装模拟Ruby环境所必需的大量软件包

Kotlin

Kotlin是JVM家族中年纪最小的一位新成员。它从Groovy及Scala等前辈身上继承了不少优秀基因,同时还加入了一些别出心裁的原创要素。它的设计思路是提供同Java一样快捷的编译效果,并获得本地Java二进制内容的处理速度。这两大优势使其从头一个发布版起,就成为开发人员们解决编译及执行速度问题的首选JVM语言。

Groovy的-强大的,高层次的,企业的友好
JRuby的 -比Ruby更好的Ruby?
Scala-快速,多范例编程
FANTOM - Java和网加性能。
Jython - JVM上的Python。
Groovy,Scala和kotlin有广泛的工具支持。