Proposal for a Small Scheme Implementation.

Abstract

Scheme is a lexically scoped dialect of LISP developed at MIT. This report determines the feasibility of implementing a Scheme-based programming/application environment on a contemporary personal computer such as the Apple Macintosh. The absence of virtual memory, coupled with a limitation on the maximum amount of physical memory, means that space is at a premium. The use of bytecodes is suggested and a possible instruction set sketched. Because of space constraints, tail-recursion optimization and an efficient mechanism for the reclamation of inaccessible contexts are also examined. Using the built-in operating system and user interface of the Macintosh realizes speed, functionality, and friendliness but raises a number of interesting issues. For example, the Pascal and assembler routines make many assumptions about data representation, type checking, and parameter passing. Since an implementation of Scheme is likely to have radically different conventions, the two environments must be interfaced smoothly and efficiently. In addition to the bytecoded instruction set, the authors specify the virtual machine informally, discuss the implementation of basic and advanced features, estimate the performance of such an implementation, and finally evaluate the proposed design. (Author)

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 1984
Accession Number
ADA148707

Entities

People

  • J. W. Stamos
  • R. Schooler

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Weapons Technologies

DTIC Thesaurus Topics

  • Application Software
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Debugging
  • Environment
  • Information Processing
  • Instruction Set Architecture
  • Instructions
  • Machine Languages
  • Object Code
  • Operating Systems
  • Personal Computers
  • Programming Languages
  • User Interface
  • Virtual Machines

Fields of Study

  • Computer science

Readers

  • Applied Combinatorial Optimization and Logic Circuit Design.
  • Computational Linguistics
  • Parallel and Distributed Computing.

Technology Areas

  • Space