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.6.zip (59.5 kB view details)

Uploaded Source

calysto_scheme-1.0.6.tar.gz (55.3 kB view details)

Uploaded Source

Built Distribution

calysto_scheme-1.0.6-py2-none-any.whl (57.4 kB view details)

Uploaded Python 2

File details

Details for the file calysto_scheme-1.0.6.zip.

File metadata

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

File hashes

Hashes for calysto_scheme-1.0.6.zip
Algorithm Hash digest
SHA256 ba7252e6a05995ac6c6c3eeda94fa91a72f5fb142ff47503427b2f210e3f254a
MD5 0e77767fb65bf0f3dbaa0b7a70236c85
BLAKE2b-256 ecc3970501327745ad21ef60a8281a370dd89362ba3b0d609d37d8b781fcda60

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for calysto_scheme-1.0.6.tar.gz
Algorithm Hash digest
SHA256 4a7e9e22dd5c2ac4bb0f3f0652f148b23184452c8886724ceb3ff44f1d8f9431
MD5 cb4d9ccfe91ac94c8a1d8d4f3b4ffffd
BLAKE2b-256 4ca629f27cf3e7bd727a448407513818cc774b67519d64ca73c17f0cd9241dda

See more details on using hashes here.

File details

Details for the file calysto_scheme-1.0.6-py2-none-any.whl.

File metadata

File hashes

Hashes for calysto_scheme-1.0.6-py2-none-any.whl
Algorithm Hash digest
SHA256 9d06f5dadaa1844ea4008c6c1248098b96f07c272d90a52c34371f4bae559d61
MD5 b7c0b36dad06b08d2dd0a902c2cbbae7
BLAKE2b-256 12cf8cbbbf8b8149324abd97121089e09ec7909e3e12c663543b7c1c80933219

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