Invokedynamic实际上是Java和JVM的游戏规则改变者。 它回到Java 7实质上打开了进入JVM语言之门的大门,尤其是通过JSR 292实现的动态语言。

尽管从未取缔,但是将语言引入JVM仍然存在一些问题。 但是,invokedynamic意味着通过新的方法调用机制,最终为动态语言提供了所需的JVM支持。

从那时起,我们已经看到许多语言真正蓬勃发展(Groovy和Scala只是两种),其他供应商也看到了这种吸引力。 7月, GE Energy 透露他们正在移植其面向对象的编程语言Magik。 经过四个月的开发, Oracle已经确认将其引入JVM 。

与许多其他JVM语言不同,GE Energy并未完全与Magik割裂,因为它始于1990年-就在Java进入市场之前。 受Smalltalk的启发,Magik 为GE Energy在公用事业和电信公司的业务 奠定了 Smallworld平台 的基础 。 与Java几乎没有相似之处,因为Magik会编译为字节码并由虚拟机(在本例中为Magik虚拟机)进行解释。

那么,当Magik已经建立时,为什么现在真的需要JVM? 吉姆·康纳斯(Jim Connors) 在公告博客 中 解释说 ,这种整合代表着“严肃的商业实体,将大量业务押注于这项努力的成功。”

移植的原因包括决定从专有环境转向开放源代码JVM,以及选择使用Java当前的库和将来的功能(例如lambda表达式)的选择。 Connors还宣称JVM上的原始Magik平台速度提高了5倍。

对于Magik开发人员而言,至关重要的是,旧版应用程序可以通过重新编译直接迁移,而GE现在可以利用900万开发人员的金矿这一事实可能发挥了巨大作用。 Oracle最近针对Java的嵌入式技术也可能对GE有用。

愤世嫉俗的人可能会认为这是在扩展更大的平台,但是博客文章中的评论似乎可以有效地回答这些批评。 只要GE表现出对未来的承诺,就不会有问题。 无论您对GE Energy决定添加一些Magik的决定有何看法,您都不能否认 JSR-292 已使JVM成为编程语言的通用指示器。 JVM上总还有空间。

图片由eva.pébar和pasukaru76提供

翻译自: https://jaxenter.com/spotlight-on-magik-the-newest-jvm-language-105164.html

聚焦Magik –最新的JVM语言相关推荐

  1. xtend怎么使用_Xtend 2.3 Beta到来–为另一种JVM语言腾出空间

    xtend怎么使用 在Eclipse的最新Xtend 2.3版本中已经有了相当多的期待和X引用(我们将停止公开尝试成为" 1990年代很酷"),这将成为Juno发行版的一部分. 现 ...

  2. eclipse jvm_一种与众不同的JVM语言:Eclipse Xtend(现在适用于Android)

    eclipse jvm 争夺Java开发人员注意力的JVM语言的数量无休止,所有这些语言都提供了超越沼泽标准Java的各种现代语言概念. 但是,如果您没有时间学习Groovy,Clojure和Scal ...

  3. 从零开始开发JVM语言(十三)代码生成与ASM

    2019独角兽企业重金招聘Python工程师标准>>> 目录戳这里 如果能够做完语义分析,得到带类型的AST,或者更接近于虚拟机字节码的结构,那么你离整个编译器的"落成&q ...

  4. java程序设置jvm_Java程序员应在2018年学习的3种JVM语言

    java程序设置jvm 如果您是Java程序员,并且想学习更多的编程语言以扩展您的知识和技能,但是不确定选择哪种编程语言,那么您来对地方了. 在本文中,我将分享Java程序员可以在2018年学习的3种 ...

  5. jvm与非jvm语言优劣_都灵JVM编程语言:使用ANTLR构建高级词法分析器

    jvm与非jvm语言优劣 正如我在上一篇文章中所写的那样,我最近开始研究一种名为Turin的新编程语言. 可以在GitHub上找到适用于languag初始版本的编译器. 我目前正在改善语言,并正在开发 ...

  6. Java程序员应在2018年学习的3种JVM语言

    如果您是Java程序员,并且想学习更多的编程语言以扩展您的知识和技能,但是不确定选择哪种编程语言,那么您来对地方了. 在本文中,我将分享Java程序员可以在2018年学习的3种JVM语言以及为什么要学 ...

  7. 从零开始开发JVM语言(七)语义分析的起步

    2019独角兽企业重金招聘Python工程师标准>>> 目录戳这里 语法分析结束后,编译才刚刚开始.接下来是语义分析. 语义分析的功能大体来说,是对AST加入类型信息.不过不仅是类型 ...

  8. JVM语言Xtend优缺点速览

    Xtend是Eclipse推出的一门静态类型的编程语言,它会编译成易于理解的Java代码.Xtend源于Java并对它做了许多改进.它对于Java就像CoffeeScript对于JavaScript: ...

  9. jvm与非jvm语言优劣_JVM语言的兴衰

    jvm与非jvm语言优劣 时不时有一篇文章预测Java语言的消亡. 有趣的是,他们都没有写日期. 但老实说,它们可能都是真实的. 这是每种语言的命运:消失于遗忘-或更确切地说,越来越少地用于新项目. ...

最新文章

  1. 接雨水—leetcode42
  2. 【专栏精选】实战:动态配置图片
  3. 怎样更改SQL Server 2008的身份验证方式
  4. php fmod小数位数_PHP取余函数介绍MOD(x,y)与x%y
  5. 88相似标准形09——JJordan-Chevalley分解、幂零矩阵与幂零变换、幂零矩阵的判别、中国剩余定理、可换线性变换的性质
  6. java环境配置:安装jdk和集成开发环境
  7. java+整合handwrite_Java
  8. 关于struts2通配符不能用
  9. 使用SpringBoot+RabbitMQ框架集成例程
  10. ocr初始化失败怎么办_电脑提示应用程序正常初始化失败如何解决?
  11. 1209: 【入门】数字走向II
  12. 硬盘SMART检测参数attributes详解
  13. 011235813用java写出来_C 编程练习题大全(带答案)
  14. 从硬件到语言,详解C++的内存对齐
  15. 【北邮果园微处理器设计】gpio.c 应用解读(附gpio.c源码)
  16. 2021年全球工业齿轮电机和驱动装置收入大约16590百万美元,预计2028年达到24520百万美元
  17. 计算机学习之旅——C语言(序言)
  18. 三星I9100如何鉴别翻新机
  19. 他们的心声,让无数人温暖一生
  20. Java图片识别技术原理

热门文章

  1. js变量的重复声明问题总结
  2. 个人英雄主义黄昏将至,6 大现状聊透开源这一年
  3. 如何更新Ubuntu软件源
  4. 虹科技术 | 终端入侵防御 | 在重大攻击中发现新的Babuk勒索软件
  5. 32位与64位系统基本数据类型的字节数
  6. 排序二叉树(BST)
  7. DOSBox debug中查看标志位
  8. Linux 关机与重启
  9. 大数据和云计算具体是什么概念
  10. L1-概率论中的10个基本概念:古典概率、联合概率、条件概率、生日问题等