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 --user python3 -m calysto_kernel install --user `

or in the system kernel folder with:

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

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 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.1.5.zip (83.9 kB view details)

Uploaded Source

calysto_scheme-1.1.5.tar.gz (79.1 kB view details)

Uploaded Source

Built Distribution

calysto_scheme-1.1.5-py2-none-any.whl (81.7 kB view details)

Uploaded Python 2

File details

Details for the file calysto_scheme-1.1.5.zip.

File metadata

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

File hashes

Hashes for calysto_scheme-1.1.5.zip
Algorithm Hash digest
SHA256 dd77f27fbcf48e864abe2c15b8af26836e7ca1f8ef51f1d41d1b53be7db30a53
MD5 2dd9aaa6fb0cfb0d6939631c28df8a99
BLAKE2b-256 f8a6144ee6be048401cce79458184cc840714bb54162755a1c7cfa04e3f0bbfa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for calysto_scheme-1.1.5.tar.gz
Algorithm Hash digest
SHA256 1f44dc3673f02b8679950e5c781e4c3e623c099610743f7f874abefffe127292
MD5 a14b6a05d6438db3b68a9082601f269e
BLAKE2b-256 eff3038bbd1100f0cf336cf615a8b8e817d1699b0964d1b6c28c756c4153aead

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for calysto_scheme-1.1.5-py2-none-any.whl
Algorithm Hash digest
SHA256 461bd3c979f1decc287b06560cd561ed97a9c78a5bfa6c4d489d5aabac83a879
MD5 d037a2d9df91fdea158a0c8a205fd9e5
BLAKE2b-256 2b146f92769388ca155c34759145d6bd73a5b4db0062ba17eadda0634c122496

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