Skip to content

A Scheme kernel for Jupyter that can use Python libraries

Notifications You must be signed in to change notification settings

ppope/calysto_scheme

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

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 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 magnatudes slower than Python

About

A Scheme kernel for Jupyter that can use Python libraries

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%