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.3.zip (58.9 kB view details)

Uploaded Source

calysto_scheme-1.0.3.tar.gz (55.5 kB view details)

Uploaded Source

File details

Details for the file calysto_scheme-1.0.3.zip.

File metadata

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

File hashes

Hashes for calysto_scheme-1.0.3.zip
Algorithm Hash digest
SHA256 9b40a60501383db920e83d6c576d2a59b7c2fb570a7fd3b9719927a31c041425
MD5 3a15ae4a1e5d851a431803ae93eb13bb
BLAKE2b-256 e9b1ab5af22138c462a503ae8582e9baf5b7905462b1e25d84fc937120f0ea06

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for calysto_scheme-1.0.3.tar.gz
Algorithm Hash digest
SHA256 3dc117660eb8f3cc7a1a01d980839b3a669e72f83e5468224730924a776cd2b8
MD5 036128feb9da64e417fe5cedd6cbbbc1
BLAKE2b-256 92e6c69f97eba94bd26378d0337dab5561203843bc092e0658a8e9626ccef56d

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