Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A Compact Scheme System for Microcontrollers
C Racket Scheme Yacc Lex Makefile Other
Branch: master

Merge pull request #3 from abbrev/fix-vector-space

Fix allocation of a vector cell
latest commit 068e348d03
@stamourv authored


This is a very small Scheme system designed to run on small
microcontrollers, currently PIC18 and ARM.

It consists of

* a bytecode compiler which compiles Scheme source code to bytecode.
  The bytecode compiler is run using Racket, usually on a

* a bytecode interpreter which can be either compiled to run on a
  microcontroller, or to be run on some common operating systems, at
  least GNU/Linux (Windows support hasn't been tested in a while,
  though, and especially the networking part might not work out of the
  box). It is written in (mostly) portable C.


1. Install Racket (needed to run the bytecode compiler)

2. Build the VM:
 This will build the VM with the default configuration (workstation,
 no deubgging). To configure the VM for another architecture, or with
 different options, run
     make help
 from the `vm' directory.

Note: gawk is required to build the VM.

2. Compile a Scheme program:
     ./picobit prog.scm

3. Run the resulting program:
     ./picobit-vm prog.hex

Note: The `p' script is a shortcut for compiling and running programs:
     ./p prog.scm
 is equivalent to
     ./picobit prog.scm ; ./picobit-vm prog.hex


  * A paper describing PICOBIT has been presented to IFL 2009:
    Slides from the presentation:

  * S3 (Small Scheme Stack) : A Scheme TCP/IP Stack Targeting Small
    Embedded Applications
    Slides from the presentation:

 PICOBIT is a descendant of the BIT and PICBIT systems. You can find
 papers describing these systems at:


 Marc Feeley originally wrote PICOBIT around 2006.
 Vincent St-Amour took over development in 2008.
 Jim Shargo worked on a port to Racket in 2011.
 The Racket port was completed in June 2011.
 Peter Zotov (whitequark) ported PICOBIT to ARM in August 2011.


 PICOBIT is released under the GPLv3.
Something went wrong with that request. Please try again.