Small Scheme Stack: a Scheme TCP/IP stack targeting small embedded applications

Vincent St-Amour, Lysiane Bouchard, Marc Feeley

Interaction with embedded systems is usually achieved by hooking up these devices to a computer network. The TCP/IP stack of protocols has often been used to this end, requiring compact stacks to be implemented as regular ones are unsuitable for this use because of their large size. Traditionally, compact stacks such as uIP have been implemented in C. Here we report on our experience in implementing Small Scheme Stack (S3, for short), a compact TCP/IP stack written in Scheme for microcontrollers with a few kilobytes of memory. This paper describes how we were able to minimize the code size and memory requirements by taking advantage of Scheme's power of abstraction and of a virtual machine; we also provide a sample application for demonstration purposes.

Last updated 23 July 2008.

Valid XHTML 1.0!