Skip to main content

A Scheme kernel for Jupyter that can use Python libraries

Project description

# Calysto Scheme

[![codecov](]( [![CircleCI](](

You can try Calysto Scheme without installing anything by clicking on the following button:


Calysto Scheme is a real Scheme programming language, with full support for continuations, including call/cc. It can also use all Python libraries. Also has some extensions that make it more useful (stepper-debugger, choose/fail, stack traces), or make it better integrated with Python. For more details on using Calysto Scheme, see:

In Jupyter notebooks, because Calysto Scheme uses [MetaKernel](, it has a fully-supported set of “magics”—meta-commands for additional functionality. This includes running Scheme in parallel. See all of the [MetaKernel Magics](

Calysto Scheme is written in Scheme, and then translated into Python (and other backends). The entire functionality lies in a single Python file: However, you can easily install it (see below).

Calysto Scheme in use:

## Install

You can install Calysto Scheme with Python3:

` pip3 install --upgrade calysto-scheme --user python3 -m calysto_scheme install --user `

or in the system kernel folder with:

` sudo pip3 install --upgrade calysto-scheme sudo python3 -m calysto_scheme install `

You can also use the –sys-prefix to install into your virtualenv.

Change pip3/python3 to use a different pip or Python. The version of Python used will determine how Calysto Scheme is run.

Use it in the Jupyter console, qtconsole, or notebook:

` jupyter console --kernel calysto_scheme jupyter qtconsole --kernel calysto_scheme jupyter notebook `

You can also just use the Python program, but it doesn’t have a fancy Read-Eval-Print Loop. Just run:

` python calysto_scheme/ `

## Requires

  • Python3
  • metakernel (installed automatically)

Calysto Scheme can also be un under PyPy for increased performance.

## Features

Calysto Scheme supports:

  • continuations
  • use of all Python libraries
  • choose/fail - built in fail and try again
  • produces stack trace (with line numbers), like Python
  • test suite


  • Object-oriented class definitions and instance creation
  • complete Scheme functions (one can fall back to Python for now)


  • Runs slow on CPython; try PyPy

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for calysto_scheme, version 1.4.6
Filename, size File type Python version Upload date Hashes
Filename, size calysto_scheme-1.4.6-py2.py3-none-any.whl (313.4 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size calysto_scheme-1.4.6.tar.gz (198.9 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page