-
Notifications
You must be signed in to change notification settings - Fork 34
A Compact Scheme System for Microcontrollers
License
stamourv/picobit
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
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
PC/workstation.
* 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.
USAGE:
1. Install Racket (needed to run the bytecode compiler)
racket-lang.org
2. Build the VM:
make
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
SEE ALSO:
* A paper describing PICOBIT has been presented to IFL 2009:
http://www.ccs.neu.edu/home/stamourv/papers/picobit.pdf
Slides from the presentation:
http://www.ccs.neu.edu/home/stamourv/slides/picobit-ifl09.pdf
* S3 (Small Scheme Stack) : A Scheme TCP/IP Stack Targeting Small
Embedded Applications
http://www.ccs.neu.edu/home/stamourv/papers/s3.pdf
Slides from the presentation:
http://www.ccs.neu.edu/home/stamourv/slides/s3-sw08.pdf
PICOBIT is a descendant of the BIT and PICBIT systems. You can find
papers describing these systems at:
http://w3.ift.ulaval.ca/~dadub100/
HISTORY:
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.
LICENCE:
PICOBIT is released under the GPLv3.
About
A Compact Scheme System for Microcontrollers
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published