Flexible Language Interoperability

Torbjörn Ekman, Peter Mechlenborg, Ulrik Pagh Schultz

Research output: Contribution to journalJournal articleResearchpeer-review

387 Downloads (Pure)


Virtual machines raise the abstraction level of the execution
environment at the cost of restricting the set of supported languages.
Moreover, the ability of a language implementation to integrate with
other languages hosted on the same virtual machine typically
constrains the features of the language. In this paper, we present a highly flexible
yet efficient approach to hosting multiple programming languages on an object-oriented
virtual machine. Our approach is based on extending the interface of each class with language-specific
wrapper methods, offering each language a tailored view of a given class. This approach can be
deployed both on a statically typed virtual machine, such as the JVM, and on a
dynamic virtual machine, such as a Smalltalk virtual machine.

We have implemented our approach to language interoperability on top of a prototype
virtual machine for embedded systems based on the Smalltalk object model, which provides
interoperability for embedded versions of the Smalltalk, Java, and BETA programming

Original languageEnglish
JournalJournal of Object Technology
Issue number8
Pages (from-to)95-116
Number of pages22
Publication statusPublished - 1. Sep 2007


  • language interoperability
  • object-oriented programming
  • virtual machine


Dive into the research topics of 'Flexible Language Interoperability'. Together they form a unique fingerprint.

Cite this