The Oz Virtual Machine - Records, Transients, and
Deep Guards
Author: Michael Mehl
Editor:
In this thesis we describe the design and implementation of a virtual
machine LVM for the execution of Oz programs. Oz is a concurrent,
dynamically typed, functional language with logic variables, futures,
by-need synchronization, records, feature constraints, and deep guard
conditionals. The LVM supports light-weight threads, first-class
procedures, exception handling, transients as generalization of logic
variables, futures, and constraint variables, records and open
records, and multiple computation spaces to implement the deep guard
conditional. We discuss the modular, open, and extensible design of
the LVM. Techniques for the efficient implementation of the store
on standard hardware are shown. The LVM subsumes well-known virtual
machines for functional, logic, and imperative languages.
|