{"id":72411,"date":"2019-08-07T13:31:53","date_gmt":"2019-08-07T13:31:53","guid":{"rendered":"https:\/\/www.whizlabs.com\/blog\/?p=72411"},"modified":"2021-03-04T06:26:59","modified_gmt":"2021-03-04T06:26:59","slug":"jvm-languages","status":"publish","type":"post","link":"https:\/\/www.whizlabs.com\/blog\/jvm-languages\/","title":{"rendered":"A Complete Guide to JVM Languages"},"content":{"rendered":"<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Java Virtual Machine or JVM, has been a notable revolution in the world of development. This helps in the development and deployment of software. It was initially designed for powering applications that were written using Java language. On the other hand, language designers realized the potential of JVM in running different languages. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Therefore, many JVM languages developed over the years with the massive class library and features provided by JVM. The following discussion would outline a brief insight into the top JVM languages along with some examples of the use cases. The discussion would start with a brief history of the JVM languages and would also include implementations of JVM programming languages and the Java converters.<\/span><\/p>\n<p><a href=\"https:\/\/www.whizlabs.com\/spring-framework-basics-video-course\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class=\"size-full wp-image-72414 aligncenter\" src=\"https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/728X90-24.jpg\" alt=\"Spring Framework Basics\" width=\"728\" height=\"90\" srcset=\"https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/728X90-24.jpg 728w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/728X90-24-300x37.jpg 300w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/728X90-24-640x79.jpg 640w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/728X90-24-681x84.jpg 681w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/a><\/p>\n<h2 class=\"p1\"><span class=\"s1\">A Brief History of JVM Languages<\/span><\/h2>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Before starting with what are JVM languages, it is essential to find out some details about history. The first one was Java, and it was the only programming language used for JVM. However, as we noted above, language designers recognized the potential of JVM and then many alternatives developed over the years. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The main alternatives which made a mark included Jython, which was a Python implementation for JVM. The next additions were JavaScript engines and Rhino for JVM in 1997. Subsequently, BeanShell was launched in 2000, and JRuby was launched in 2001. The growth of alternative JVM languages was not completely based on scripting facilities. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The backward-compatibility principles of Java were responsible for promoting the development of alternative programming languages. These improvements were primarily associated with the addition of innovative features that are not available in Java or the standard libraries. Therefore, the world witnessed some of the common names among top JVM languages such as Scala, Clojure, Kotlin and Groovy.<\/span><\/p>\n<h3>List of Most Popular JVM Languages<\/h3>\n<p style=\"text-align: justify;\">As mentioned earlier, Java is the main JVM language and after Java, a number of other JVM languages have been developed. Let&#8217;s dive deep and understand more about these JVM programming languages:<\/p>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">1. Java<\/span><\/h4>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The first entry in this discussion on JVM languages is Java. Java is a widely popular language among developers. Java has been a reliable choice for mobile developers, enterprise developers, and web developers. It would not be wrong to assume that Java has built up a massive support base through its wider adoption. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">As a result, the Java runtime or Java Virtual Machine has developed into a software ecosystem. Java has also provided the foundation for many other languages to use the JVM platform to become comprehensive software development tools. You can find through comparison of JVM languages that Java provides the most notable benefit of cross-platform portability. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">This feature is helpful for writing programs on a single platform and to execute them on any combination of hardware and software with the right amount of runtime support. Java is also popular for developing gradually with the addition of concepts such as functional programming. The use of Java runtime has many benefits associated with it. The original master among JVM languages, Java has ensured consistency in its standards as well as common features that have formed the benchmark for existing JVM landscape.<\/span><\/p>\n<blockquote><p>Are you a Java developer aspired to level up your career? Here&#8217;s the <a href=\"https:\/\/www.whizlabs.com\/blog\/things-java-developers-should-learn\/\" target=\"_blank\" rel=\"noopener noreferrer\">must-have skills for Java developers<\/a>.<\/p><\/blockquote>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">2. Kotlin<\/span><\/h4>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The next addition based on JVM language popularity is Kotlin. JetBrains developed Kotlin in 2010, and till then it is available as an open-source offering. The simplicity, conciseness, and safety factors are better with Kotlin as compared to Java. Therefore, Kotlin can be accounted for as the same iteration of Java only with simpler usability. You would find that the syntax in Kotlin is comparatively less verbose than that of Java. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">One of the benefits of Kotlin as JVM languages is in the permission for functional programming styles. This surely presents an additional factor for superiority over Java. Also, you can find better ways of managing null values with Kotlin. Nowadays, android developers choose Kotlin over Java for different app development projects. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The long-term path for Kotlin also appears to be better and more than the conventional scope of JVM. For example, one of the projects with JVM is associated with the compilation of Kotlin to machine-native code through using LLMV framework. The most noticeable benefit of Kotlin as JVM languages 2019 is the interoperability with Java. It can effectively use the existing libraries and frameworks in Java.<\/span><\/p>\n<blockquote><p>Check out the <a href=\"https:\/\/www.whizlabs.com\/blog\/top-java-frameworks\/\" target=\"_blank\" rel=\"noopener noreferrer\">top 5 Java Frameworks<\/a> to choose as a developer.<\/p><\/blockquote>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">3. Scala<\/span><\/h4>\n<p><a href=\"https:\/\/www.whizlabs.com\/ocpjd-java-se-11-programmer-i\/practice-tests\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" class=\" wp-image-72415 alignright\" src=\"https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/300X250-20.jpg\" alt=\"Java SE 11 Programmer I [1Z0-815]\" width=\"218\" height=\"181\" \/><\/a><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Scala is the third addition to our discussion on JVM languages. The main objective of creating Scala was to improve the productivity of Java developers. The striking highlight of Scala involves the combination of functional as well as object-oriented programming in one language. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">This has been responsible for accessing the functional programming paradigm and improving the usefulness of Scala for the Java ecosystem. The syntax of Scala is also quite similar to that of Java, and this helps reduce the learning curve. As compared to the functional option of Clojure, Scala can be essentially the go-to option. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Presently, the development of Scala Native is underway, and this variant would be executed outside JVM on bare metal through leveraging LLVM framework. However, there is still time for making it available for production. Scala easily ranks higher than other JVM languages 2019 due to features such as pattern matching, algebraic data types, lazy computation and better support for immutability. <\/span><\/p>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">4. Clojure<\/span><\/h4>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Clojure is the next entrant among JVM languages in this list. What makes it a reliable mention in this list? The popularity of Clojure among developers makes it worth to be on the list. The primary nature of Clojure as a functional programming language helps in making it popular. Rich Hickey developed it with the notion of developing a functional language for the JVM within the Lisp family. The benefit of Clojure is observed in the ease of writing high-performance and concurrent applications that can be suitable on platforms running with Java.<\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">On the other hand, it can also allow a unique set of programming styles that are different than that of Java. The name of Clojure comes out in JVM language popularity with the example of Puppet Server. The successful migration of Puppet Server from Ruby to Clojure is accounted as the notable success story. Clojure is also known for running on the Common Language Runtime of Microsoft. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Being a compiled language, it also provides dynamic features that are supported at runtime. You would also note that Clojure has a macro system and it also considers code as data. The application of Clojure for concurrency and runtime polymorphism can also be accounted as reasons to choose Clojure. On the other hand, Clojure is also associated with some setbacks, such as confusing error messages.<\/span><\/p>\n<blockquote><p>Must Read: <a href=\"https:\/\/www.whizlabs.com\/blog\/best-java-blogs\/\" target=\"_blank\" rel=\"noopener noreferrer\">Ultimate List of Best Java Blogs<\/a><\/p><\/blockquote>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">5. Groovy<\/span><\/h4>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Groovy is the next addition to this list of JVM languages. The programming language was developed by Pivotal and is presently provided by the Apache Software Foundation. The language is known for using the existing experience in Java.<span class=\"Apple-converted-space\">\u00a0 <\/span>It also presents features that are based on dynamic languages such as Ruby and Python. Groovy is also known for direct support from the Jenkins continuous integration server. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">In the comparison of JVM languages, it is observed that a crucial web framework such as Grails is built by using Groovy. The upcoming variants of Groovy would include features in newer versions of Java and the JVM such as the Java 8 lambda syntax. This domain-specific language (DSL) is also associated with support for static compilation capabilities and static typing. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">It provides better support for developers, and the syntax is easy to learn. The striking aspect of this language is its easy integration with other Java programs and adding crucial features. You can find compile-time and runtime meta-programming along with scripting abilities and features for functional programming. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The large and extensively developed ecosystem in Groovy helps in providing effective support to developers. Furthermore, the developers all over the world appreciate the versatility of Groovy. These aspects of service in Groovy make it as one of the notable names in the domain of JVM languages. <\/span><\/p>\n<h4 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">6. Jython and JRuby<\/span><\/h4>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The other notable mentions that come with the question on what are JVM languages include Jython and JRuby. As the names imply, both these languages are considered as implementations of Python and Ruby designed specifically for the JVM. The compatibility of Jython is observed with the 2.x branch of Python. The last stable version of Jython was introduced in mid-2015. Some of the other python implementations include PyPy and ZipPy. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">PyPy acts as an interpreter and helps in translation of source code into JVM bytecode or machine code. ZipPy is popular for its speed and flexibility of using Java JIT compiler. JRuby shows effective compatibility with the recently released Ruby 2.3. Both of these languages can be used for dynamic compilation to Java bytecode. Also, both languages are capable of interoperability with other JVM languages and especially with Java. A closer look at JPython and JRuby ensures that the former is an ideal tool for improving the readability of the code.<\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">On the other hand, JRuby provides support for higher performance and full threading in the implementation of Ruby for JVM. The other noticeable highlights of JRuby are identified in the ease of installation and simplicity of migration. Also, JRuby makes sure to provide the simplicity of migration. Another Ruby implementation is Mirah. Mirah is ideally known for a simple syntax, lack of performance penalty and the principles of no runtime library.<\/span><\/p>\n<blockquote><p>Preparing for a Java interview? Here we bring the <a href=\"https:\/\/www.whizlabs.com\/blog\/top-java-interview-questions\/\" target=\"_blank\" rel=\"noopener noreferrer\">Top 100 Java Interview Questions<\/a> to help you ace the Java interview.<\/p><\/blockquote>\n<h3 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">More JVM Programming Languages<\/span><\/h3>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">There are many other JVM languages other than the ones outlined until now in this discussion. The credible mentions that come to mind are Ceylon, Fantom, Frege, and Haxe.<\/span><\/p>\n<ul>\n<li class=\"p1\" style=\"text-align: justify;\">\n<h4><span class=\"s1\">Ceylon<\/span><\/h4>\n<\/li>\n<\/ul>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Ceylon is an offering from Red Hat. It is known for dealing with certain issues that are common in Java. It helps to note the issues such as verbosity and the relationship of Java to the underlying mechanisms in the JVM frequently. <\/span><span class=\"s1\">Ceylon helps in addressing all these issues and is ideally suited for compilation on Node.js, Dart VM or the JVM.<\/span><\/p>\n<ul>\n<li>\n<h4>Frege<\/h4>\n<\/li>\n<\/ul>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The mention of Frege should not escape this discussion. As a version of the functional language Haskell, Frege is built for the JVM. The advantage of Frege is in the interoperability with Java in general and its ease of compilation to a Java class.<\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Frege is popular for its benefits of functional paradigms and immutability like Haskell. It would also be reasonable to take note of Eta, which is another variant of Haskell suited for the JVM. The striking detail about this JVM language is the facility of using packages from the package repository of Haskell, Hackage. This provides better compatibility with the Haskell ecosystem, thereby simplifying development processes. <\/span><\/p>\n<ul>\n<li class=\"p1\" style=\"text-align: justify;\">\n<h4><span class=\"s1\">Haxe<\/span><\/h4>\n<\/li>\n<\/ul>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">The additional JVM languages also include Haxe. The primary use of Haxe is for compiling to JVM as well as other platforms such as bare metal, web and mobile devices. You would find the syntax in Haxe quite similar to Java and can e quite easy to learn. Also, Haxe could ensure interoperability with other Java libraries when needed for compilation to the JVM.\u00a0<\/span><\/p>\n<ul>\n<li class=\"p1\" style=\"text-align: justify;\">\n<h4><span class=\"s1\">Fantom<\/span><\/h4>\n<\/li>\n<\/ul>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Fantom is a reliable language that has implementations for .NET CLR and the JVM. Also, you can note the facility of APIs to abstract differences between the two platforms. The ease of compiling Fantom to JavaScript is notable, and it also provides the benefit of deployment to a wide range of other targets. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Fantom also helps in excluding the support of user-defined generics and comes with three in-built classes. These classes could include parameters and help programmers utilize generics alongside maintaining the simplicity of the overall type system. It is also reasonable to include the name of Xtend among other programming languages for the JVM. This static type of JVM language is basically for the compilation of Java code and is fit for beginners.<\/span><\/p>\n<blockquote><p>Spring is one of the top Java frameworks and the latest version right now is Spring 5. Read this article to know more about of <a href=\"https:\/\/www.whizlabs.com\/blog\/spring-framework-5\/\" target=\"_blank\" rel=\"noopener noreferrer\">Java Spring Framework 5<\/a><\/p><\/blockquote>\n<h3 class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Conclusion<\/span><\/h3>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">On a concluding note, this article has covered ample information about JVM languages currently available. We discussed the notable mentions of Java, Kotlin, Scala, Groovy and Clojure in detail with their essential features and benefits. The discussion also attempted to reflect on the implementations of Python and Ruby for the JVM. <\/span><\/p>\n<p class=\"p1\" style=\"text-align: justify;\"><span class=\"s1\">Subsequently, we also covered the lesser-known yet highly appreciated languages such as Haxe, Frege, Ceylon, and Fantom. The scope for improving programming languages for the JVM is observed with new variants coming out every day. The primary emphasis on interoperability, simplicity of syntax and readability of code would drive the future of JVM programming languages.<span class=\"Apple-converted-space\">\u00a0 \u00a0<\/span><\/span><\/p>\n<p style=\"text-align: justify;\">If you are a Java developer, it is must to have the knowledge of one or more JVM languages. If you have enough development skills, validate them with a <a href=\"https:\/\/www.whizlabs.com\/oracle-java-certifications\/\" target=\"_blank\" rel=\"noopener\">Java programming certification<\/a>. To help you get ahead in your career, we offer <a href=\"https:\/\/www.whizlabs.com\/oracle-java-certifications\/\" target=\"_blank\" rel=\"noopener noreferrer\">Oracle Java Training Courses<\/a>. Enroll now and bring your career one level up.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Java Virtual Machine or JVM, has been a notable revolution in the world of development. This helps in the development and deployment of software. It was initially designed for powering applications that were written using Java language. On the other hand, language designers realized the potential of JVM in running different languages. Therefore, many JVM languages developed over the years with the massive class library and features provided by JVM. The following discussion would outline a brief insight into the top JVM languages along with some examples of the use cases. The discussion would start with a brief history of [&hellip;]<\/p>\n","protected":false},"author":220,"featured_media":72422,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[13],"tags":[2116,2113,2117,967,3936,2112,2111,2118,2114,2115,2110,2109],"class_list":["post-72411","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-clojure","tag-comparison-of-jvm-languages","tag-groovy","tag-java-3","tag-java-programming-certification","tag-jvm-language-popularity","tag-jvm-languages-2019","tag-jython-and-jruby","tag-kotlin","tag-scala","tag-top-jvm-languages","tag-what-are-jvm-languages"],"uagb_featured_image_src":{"full":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages-150x150.png",150,150,true],"medium":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages-300x158.png",300,158,true],"medium_large":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"large":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"1536x1536":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"2048x2048":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"profile_24":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",24,13,false],"profile_48":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",48,25,false],"profile_96":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",96,50,false],"profile_150":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",150,79,false],"profile_300":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",300,158,false],"tptn_thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages-250x250.png",250,250,true],"web-stories-poster-portrait":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",600,315,false],"web-stories-publisher-logo":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",96,50,false],"web-stories-thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2019\/08\/jvm-languages.png",150,79,false]},"uagb_author_info":{"display_name":"Aditi Malhotra","author_link":"https:\/\/www.whizlabs.com\/blog\/author\/aditi\/"},"uagb_comment_info":14,"uagb_excerpt":"Java Virtual Machine or JVM, has been a notable revolution in the world of development. This helps in the development and deployment of software. It was initially designed for powering applications that were written using Java language. On the other hand, language designers realized the potential of JVM in running different languages. Therefore, many JVM&hellip;","_links":{"self":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/72411","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/users\/220"}],"replies":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/comments?post=72411"}],"version-history":[{"count":9,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/72411\/revisions"}],"predecessor-version":[{"id":72424,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/72411\/revisions\/72424"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/media\/72422"}],"wp:attachment":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/media?parent=72411"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/categories?post=72411"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/tags?post=72411"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}