• DocumentCode
    796046
  • Title

    Implementing non-strict evaluation on OOVMs

  • Author

    Perry, N.

  • Volume
    152
  • Issue
    6
  • fYear
    2005
  • Firstpage
    309
  • Lastpage
    315
  • Abstract
    Object-oriented virtual machines (OOVMs), such as the Common Language Infrastructure (CLI) and Java Virtual Machine (JVM), are increasingly common. The CLI, with its support for objects and value types, provides a good platform for many, but not all, programming languages. Gyro, the generics for Rotor extension, improves the CLI as a platform for languages with polymorphic type systems, C++ style templates, Ada style generics, and so on. The introduction of Gyro also simplified extending languages to include generic features. However, there remain a number of programming language features that are hard to implement well on these OOVMs. These include general closures, continuations, block structure, non-strict evaluation, and dynamic inheritance. The author looks at just one of these and introduces just-in-time (JIT) objects as an OOVM version of non-strict evaluation. The method is evolutionary rather than revolutionary, but is a significant improvement over existing techniques. These have been implemented for an unreleased development version of Microsoft´s CLI. Such JIT objects support the compilation of non-strict languages. The design also enables strict languages, such as C#, to also access and create JIT objects.
  • Keywords
    Java; object-oriented programming; program compilers; software performance evaluation; virtual machines; Ada style generics; C++ style template; CLI; Gyro; JIT object; JVM; Java virtual machine; OOVM; common language infrastructure; dynamic inheritance; just-in-time object; object-oriented virtual machine; polymorphic type systems; programming language; rotor extension;
  • fLanguage
    English
  • Journal_Title
    Software, IEE Proceedings -
  • Publisher
    iet
  • ISSN
    1462-5970
  • Type

    jour

  • DOI
    10.1049/ip-sen:20045070
  • Filename
    1577583