Spotlight on Magik – the newest JVM language
Thanks to invokedynamic, a number of dynamic JVM languages can gain prominence. So what marks out the latest arrival Magik?
Invokedynamic really was a game changer for Java and the
JVM. Its arrival back in Java 7 essentially opening the gate to the
horde of JVM languages out there, especially dynamic languages
through JSR 292.
Although never outlawed, there were several issues with
bringing your language to the JVM. However, invokedynamic meant
dynamic languages were finally given the support they needed on the
JVM via the new method call mechanism.
Since then, we’ve seen a number of languages really blossom
(Groovy and Scala being just two) and other vendors have seen the
appeal too. In July, GE Energy
disclosed that they were in the process of porting their
object-oriented programming language, Magik. Four months of
development later and
Oracle have confirmed its arrival on the
Unlike many of the other JVM languages, GE Energy aren’t
exactly cutting their teeth with Magik, as it’s been around since
1990 – just before Java was making inroads. Inspired by Smalltalk,
Magik formed the basis of their Smallworld platform
for GE Energy’s business in utilities and telcos. There’s a
fair few similarities to Java, as Magik compiles down to bytecode
and is interpreted by a Virtual Machine (in this case the Magik
So why exactly does Magik need the JVM now, when they’re
already established? Jim Connors
explains in the announcement blogpost that this
integration represents a “serious commercial entity betting a
sizable of its business on the success of this
Amongst the porting reasons include the decision to move away
from a proprietary environment towards the open source JVM and the
option of using Java’s present libraries and future features, such
as lambda expressions. Connors also touts a 5x speed boost over the
original Magik platform on the JVM.
Crucially though for Magik developers, legacy applications
can migrate straight over through a recompile and the fact that GE
can now tap into the nine million developer goldmine could have
played a huge draw. Oracle’s recent embedded play for Java might
prove useful for GE as well.
The cynical amongst you might see this as mooching off a
larger platform, but comments in the blogpost seems to answer those
criticisms effectively. As long as GE show future commitment, there
isn’t an issue. Whatever you may think of GE Energy’s decision to
add some Magik into the mix, you can’t really deny that
has made the JVM an universal indicator for programming
languages. There’s always room for one more on the JVM.