Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
BIT: a very compact Scheme system for microcontrollers
Dubé D., Feeley M. Higher-Order and Symbolic Computation18 (3-4):271-298,2005.Type:Article
Date Reviewed: Aug 24 2006

A development environment, based on the Scheme programming language, that runs on small embedded hardware is presented in this paper. The development process begins on a regular workstation, on which the programmer writes Scheme source code. The system then compiles the source code, and optimizes the resulting bytecode before transferring it to the target system, where it runs on a virtual machine.

The development system is impressive: the authors claim that judicious design choices allow them to squeeze a surprisingly complete execution environment on eight-bit and 16-bit systems into only 13 kilobytes. A reduced virtual machine requires only four kilobytes. A compiled Scheme program to run in this environment occupies additional memory. For example, the authors mention a context-free parser program of 653 lines of Scheme code, which translates to about six kilobytes of bytecode. The system excludes port-based input/output, and has simplified numerical capabilities. It does, however, offer first-class continuations, and, most impressively, an asynchronous, real-time garbage collector.

Each section of the paper introduces a subsystem, describes the design choices the authors considered, and then describes the implementation details of the authors’ final choice. Not surprisingly, the authors favor compactness over performance. Still, some shrewd decisions and clever implementations allow the authors to provide some useful capabilities, comparable to full-fledged Scheme systems. Although the authors offer more details about the garbage collector in another paper, they still introduce its principal concepts.

To prove the usefulness of the system as a viable development tool for real-time embedded systems, the authors describe a couple of the platforms on which they have implemented the system. They also offer statistics on memory usage and execution performance.

Reviewer:  Marc Paquette Review #: CR133224
Bookmark and Share
 
Scheme (D.3.2 ... )
 
 
Memory Management (Garbage Collection) (D.3.4 ... )
 
 
Microprocessors And Microcomputers (B.7.1 ... )
 
 
Real-Time And Embedded Systems (C.3 ... )
 
 
Processors (D.3.4 )
 
 
Types And Design Styles (B.7.1 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Scheme": Date
The runtime environment for Scheme, a Scheme implementation on the 88000
Vegdahl S., Pleban U. ACM SIGARCH Computer Architecture News 17(2): 172-182, 1989. Type: Article
Jul 1 1990
PC Scheme: user’s guide and language reference manual (trade ed.)
, MIT Press, Cambridge, MA, 1990. Type: Book (9780262700405)
Dec 1 1991
The little Schemer (4th ed.)
Friedman D. (ed), Felleisen M., MIT Press, Cambridge, MA, 1996. Type: Book (9780262560993)
Apr 1 1997
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy