Advanced

Flexible Language Interoperability

Ekman, Torbjörn LU ; Mechlenborg, Peter and Schultz, Ulrik Pagh (2007) In Journal of Object Technology 6(8). p.95-116
Abstract
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 objectoriented 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... (More)
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 objectoriented 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 languages. (Less)
Please use this url to cite or link to this publication:
author
organization
publishing date
type
Contribution to journal
publication status
published
subject
in
Journal of Object Technology
volume
6
issue
8
pages
95 - 116
publisher
ETH, Zürich
external identifiers
  • scopus:36048995410
ISSN
1660-1769
language
English
LU publication?
yes
id
80cb0dd8-6ba0-4103-9a35-3c6a84166912 (old id 772919)
alternative location
http://www.jot.fm/issues/issue_2007_09/article2
date added to LUP
2007-12-19 11:06:41
date last changed
2017-08-06 04:25:04
@article{80cb0dd8-6ba0-4103-9a35-3c6a84166912,
  abstract     = {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 objectoriented 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.<br/><br>
<br/><br>
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 languages.},
  author       = {Ekman, Torbjörn and Mechlenborg, Peter and Schultz, Ulrik Pagh},
  issn         = {1660-1769},
  language     = {eng},
  number       = {8},
  pages        = {95--116},
  publisher    = {ETH, Zürich},
  series       = {Journal of Object Technology},
  title        = {Flexible Language Interoperability},
  volume       = {6},
  year         = {2007},
}