Tuesday, January 07, 2020

Smalltalk with the GraalVM

If you have followed Smalltalk history (or some of the posts in this blog) you might already know about the Strongtalk system.

It is a Smalltalk environment with optional static typing support. Strongtalk can make some compile time checks, and offer stronger type safety guarantees; this is the source of its name. It is non-commercial, though it was originally a commercial project developed by a small startup company named LongView Technologies (trading as Animorphic Systems). Strongtalk is freely available on http://www.strongtalk.org

Programmers of the Strongtalk VM were later responsible at Sun Microsystems to make Java running faster by implementing the so called Java HotSpot virtual machine.

The HotSpot VM (now owned by Oracle) was primarily a Java only virtual machine - thats why it is called "JVM".

But the work continued to provide a new polyglot virtual machine called "GraalVM" which is able to host and run other programming languages (like JavaScript, Python and even C) on a new single virtual machine too.

You can find more informations about GraalVM on https://www.graalvm.org

All this is based on a Graal compiler and Truffle language implementation framework as well as a language interop framework called Polyglot that allows Truffle languages to call each other.

Now the Software Architecture Group at HPI provides even a Smalltalk on the GraalVM which is primarily using Squeak as the hosted Smalltalk environment.

Using the Polyglot functionality of the GraalVM you can interoperate easily from Smalltalk with other languages of the GraalVM as it can be seen in this demo video:

No comments: