Skip to content

An implementation of Scheme in Python and C++

License

Notifications You must be signed in to change notification settings

eliben/bobscheme

Repository files navigation

Bob is a suite of implementations of the Scheme language in Python and C++. It currently includes the following Python components:

  • A Scheme interpreter
  • An implementation of a stack-based virtual machine called the "Bob VM"
  • A compiler from Scheme to Bob VM bytecode
  • A serializer and deserializer for Bob VM bytecode
  • A compiler from Scheme to WebAssembly

In addition, Bob comes with another version of the VM, implemented in C++. It's called "BareVM". Bob itself is a fully usable implementation of Scheme in pure Python; BareVM is an optional component.

There's some documentation in the doc/ directory in the source. Getting Started.

The following diagram describes Bob:

Bob diagram

Contributors 3

  •  
  •  
  •