Oddities

Five curious JVM languages

Elliot Bentley
frink1

Scala? Bor-ing. Here are five weird and wonderful projects that demonstrate the diversity of the JVM platform.

In addition to the now-vanilla Clojure, Scala and
Groovy, the JVM has some pretty eccentric languages. Some are
simple research projects, while others have probably had
million-dollar budgets – but all are worth checking out, if only
for their oddness.

Since the introduction of invokedynamic in Java 7, the JVM
ecosystem has skyrocketed (Wikipedia lists
almost 100 languages). However, the idea of building other
languages on top of the Java Virtual Machine is nothing new: some
of these date back further than a decade.

Frink

Frink is named after the wacky Simpsons character who said: “I
predict that within 100 years, computers will be twice as powerful,
10,000 times larger, and so expensive that only the five richest
kings of Europe will own them.”

And, like the number-obsessed professor, Frink is a
highly-specialised language optimised to do calculations with mixed
units of measure. For example:

height = 3 feet
gravitation = 9.80665 m/s^2
mass = 60 kg
potential_energy = height * gravitation * mass
println[potential_energy -> joules]  // Display in joules

Having been around since 2001, there are now visual ports of Frink
and even a JSP-like “Frink Server Pages”.

phpreboot

Each Hollywood movie has its own reboot, reasons the
homepage of phpreboot, so why not do the same to PHP? This do-over
of the enduring popular language ditches semicolons, $ signs on
variables and, while it’s at it, that pesky var keyword too. That’s
not to say that phpreboot is entirely negative: it adds native XML,
JSON, regex and SQL syntax support, among other changes.

Java dev Rémi Forax created phpreboot in part to show off the
potential of invokedynamic. Unfortunately, he has since apparently
abandoned the project – phpreboot has been in stasis since
2011.

Quorum

Many languages claim to be optimised for use by
humans, not computers, but only one can objectively claim to be the
easiest to grasp. Quorum has been iteratively designed through
“formal empirical studies with human subjects”, and the result is a
very clean syntax reminiscent of Ruby.

Awarded a Duke’s Choice Award in 2011 (and
covered by JAXenter
), Quorum is still under active development.
It may not appeal to grizzled programmers, but this plucky little
language could be a good way to ease newbies into coding.

JGo

Spawned within the deepest, darkest recesses of Google, Go is
quickly gaining traction thanks to its speed and scalability. But,
as with all languages, you know how it could be improved? Opening
it up to a wealth of JVM libraries already available.

Thanks to Harrison Klaperman, this became a (partial) reality,
when he began porting it across in early 2011 under the name JGo.
However, despite a message of confidence from Klaperman that he can
fully implement Go on the JVM, it has laid untouched since May
2012.

Fortress

This Sun Microsystems research project, influenced by
both Fortran and various forms of pseudocode, precedes most JVM
languages. However, it never truly graduated from Sun’s labs, and
was
finally axed last year
after three years at Oracle.

The source
code
remains online under a BSD license – but, judging by the
lack of community interest, it seems that Fortress has been no more
successful in death than it was in life.

Author
Comments
comments powered by Disqus