Skip to main content

A Scheme kernel for Jupyter that can use Python libraries

Project description

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.

In Jupyter notebooks, because Calysto Scheme uses [MetaKernel](https://github.com/Calysto/metakernel/blob/master/README.rst), 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](https://github.com/Calysto/metakernel/blob/master/metakernel/magics/README.md).

Calysto Scheme is written in Scheme, and then translated into Python (and other backends). The entire functionality lies in a single Python file: https://github.com/Calysto/calysto_scheme/blob/master/calysto_scheme/src/Scheme.py However, you can easily install it (see below).

Calysto Scheme in use:

You can install Calysto Scheme with Python3:

` pip3 install --upgrade calysto-scheme `

or in the system kernel folder with:

` sudo pip3 install --upgrade calysto-scheme `

Use it in the console, qtconsole, or notebook with IPython 3:

` ipython console --kernel calysto_scheme ipython qtconsole --kernel calysto_scheme ipython notebook --kernel calysto_scheme `

Requires:

  • ipython-3.0

  • Python2 or Python3

  • metakernel (installed automatically)

Calysto Scheme supports:

  • continuations

  • use of all Python libraries

  • choose/fail

  • produces stack trace (with line numbers), like Python

  • test suite

Planned:

  • Object-oriented class definitions and instance creation

  • complete Scheme functions (one can fall back to Python for now)

Limitations:

  • Currently a couple of magnitudes slower than Python

Project details


Download files

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

Source Distributions

calysto_scheme-1.0.1.zip (83.6 kB view details)

Uploaded Source

calysto_scheme-1.0.1.tar.gz (73.5 kB view details)

Uploaded Source

File details

Details for the file calysto_scheme-1.0.1.zip.

File metadata

  • Download URL: calysto_scheme-1.0.1.zip
  • Upload date:
  • Size: 83.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for calysto_scheme-1.0.1.zip
Algorithm Hash digest
SHA256 e95444d3726ff2c477bb459d8a660d9d3fa0811b0aa5ea41047df98ec98117f4
MD5 ef47d7c52367677fd8ea6b647a186c7c
BLAKE2b-256 150cfa1e7efb99aa5a77f904fd23eb479e773f33b154a5f79e600cde2e71f00e

See more details on using hashes here.

File details

Details for the file calysto_scheme-1.0.1.tar.gz.

File metadata

File hashes

Hashes for calysto_scheme-1.0.1.tar.gz
Algorithm Hash digest
SHA256 2c8dce7587c08bd35e83bcff088976036766eb000111d2b32b963f9df851fa6c
MD5 1ccfeca031a63cb84cfe17a98f43d099
BLAKE2b-256 18f7ab215bc79a6bdda07c242aea25a37ec6471695ba1848a8cb93dc052a93b9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page