User Tools

Site Tools


products:ict:languages:java_jvm_languages

The FPC backend for the Java Virtual Machine (JVM) generates Java byte code that conforms to the specifications of the JDK 1.5 (and later), and also to the Dalvik VM from the Android platform. While not all FPC language features work when targeting the JVM, most do (or will in the future) and we have done our best to introduce as few differences as possible.

FPC JVM

Lazarus JVM

With the recent publishing of FPC JVM branch it's now possible to build java applications.

Lazarus doesn't provide any special features to support the JVM target, however you can already configure IDE to start development.

Clojure, a modern, dynamic, and functional dialect of the Lisp programming language

Groovy, a dynamic programming and scripting language

JRuby, an implementation of Ruby

Jython, an implementation of Python

Kotlin, a statically-typed language from JetBrains, the developers of IntelliJ IDEA

Scala, a statically-typed object-oriented and functional programming language

JVM implementations of existing languages

Language : Java Implementation

Arden Syntax :

Arden2ByteCode

COBOL :

Micro Focus Visual COBOL

Heirloom Elastic COBOL

Veryant isCOBOL Evolve

ColdFusion Markup Language (CFML) :

Adobe ColdFusion

Railo

Lucee

Open BlueDragon

Common Lisp : Armed Bear Common Lisp

Cypher : Neo4j

Haskell : Eta (programming language)

JavaScript :

Rhino

Nashorn

Graal.js

LLVM Bitcode : Sulong

Mercury : Mercury (Java grade)

OCaml : OCaml-Java

Component Pascal : Gardens Point Component Pascal

Pascal :

MIDletPascal

Oxygene

Raku : Rakudo

PHP : Quercus JPHP

Prolog :

JIProlog

TuProlog

Python :

Jython

ZipPy

Graal.Python

R :

Renjin

FastR

Rexx : NetRexx

Ruby :

JRuby

TruffleRuby

Scheme :

Bigloo

Kawa

SISC

JScheme

Simula : Open Source Simula

Smalltalk : Redline

Standard ML : MLj

Tcl : Jacl

Visual Basic Jabaco

New languages with JVM implementations

  Ateji PX, an extension of Java for easy parallel programming on multicore, GPU, Grid and Cloud[19]
  Ballerina, a programming language for cloud applications with structural typing; network client objects, services, resource functions, and listeners; parallel concurrency with workers; image building; configuration management; and taint checking.[20]
  BeanShell, a scripting language whose syntax is close to Java
  EPL (Event Processing Language), a domain-specific, data manipulation language for analyzing and detecting patterns in timed event streams, which extends SQL 92 with event-oriented features. It is implemented by Esper: up to version 6 EPL was mostly a language interpreted by a Java library; since version 7 it is compiled to JVM bytecode.
  Ceylon, a Java competitor from Red Hat[1]
  CFML, ColdFusion Markup Language, more commonly known as CFML, is a scripting language for web development that runs on the JVM, the .NET framework, and Google App Engine.[21]
  Quark Framework (CAL), a Haskell-inspired functional language
  E-on-Java, object-oriented programming language for secure distributed computing
  Eta, pure, lazy, strongly typed functional programming language in the spirit of Haskell[22]
  Fantom, a language built from the base to be portable across the JVM, .NET Common Language Runtime (CLR), and JavaScript[23][1]
  Flix, a functional, imperative, and logic programming language with first-class Datalog constraints and a polymorphic effect system.
  Flow Java
  Fortress, a language designed by Sun as a successor to Fortran, mainly for parallel scientific computing. Product development was taken over by Oracle when Sun was purchased. Oracle then stopped development in 2012 according to Dr. Dobb's.
  Frege, a non-strict, pure functional programming language in the spirit of Haskell[24]
  Golo, a simple, dynamic, weakly-typed language for the JVM developed at Institut national des sciences appliquées de Lyon, France, now an incubating project at the Eclipse Software Foundation.[25][26][27]
  Gosu, an extensible type-system language compiled to Java bytecode
  Haxe, a cross-platform statically typed language that targets Java as well as JVM.
  Ioke, a prototype-based language somewhat reminiscent of Io, with similarities to Ruby, Lisp and Smalltalk
  Jelly
  Join Java, a language that extends Java with join-calculus semantics
  Joy
  Judoscript
  Mirah, a customizable language featuring type inference and a highly Ruby-inspired syntax[28][29]
  NetLogo, a multi-agent language
  Noop, a language built with testability as a major focus
  Pizza, a superset of Java with function pointers and algebraic data types
  Pnuts
  Processing, a visualization and animation language and framework based on Java with a Java-like syntax
  Prompto, a language "designed to create business applications in the cloud". It is part of the namesake platform to design business applications directly in the cloud. The Prompto language includes three "dialects": Engly, Monty, and Objy. Engly "mimics English as much as possible", Monty "tries to follow as much as possible the syntax of the Python 3 language", and Objy "tries to follow as much as possible the syntax of OOP languages such as C++, Java or C#". All three dialects seamlessly translate to one another.[30]
  RascalMPL, a source and target language independent (parameterized) meta programming language
  Whiley
  X10, a language designed by IBM, featuring constrained types and a focus on concurrency and distribution[1]
  Xtend, an object-oriented, functional, and imperative programming language built by the Eclipse foundation, featuring tight Java interoperability, with a focus on extension methods and lambdas, and rich tooling
  Yeti, an ML style functional programming language[31]
  Yirgacheffe, a language that aims to simplify and extend the object oriented paradigm.[32]
  Yoix, general purpose, non-object-oriented, interpreted dynamic programming language
  
  
products/ict/languages/java_jvm_languages.txt · Last modified: 2022/04/26 14:18 by 127.0.0.1