Skip to main content

Jupyter kernel for executing Elm code

Project description

This kernel adds support for Elm to [Jupyter](http://jupyter.org/) notebooks.

While basic functionality is in place, this is still very much a work in progress. I’m still figuring it all out. Any help, ideas, etc. would be great.

# Requirements - Python 3.6+

# Installation

Either install from a repository using pip:

` pip install elm_kernel `

or install the package from source:

` pip install -e . `

Then install the kernel spec: ` python -m elm_kernel.install `

# Usage

Run jupyter notebook and select the Elm kernel for a new notebook.

## Multi-cell code examples

By default, when you execute a code cell with the Elm kernel the code will not be compiled. Instead, the kernel simply queues up code cells. This way you can break longer examples over multiple cells, interleaving the code cells with supporting Markdown cells.

In order to ask the kernel to actually compile your code, you need to terminate a code cell with the line:

` -- compile-code `

When the kernel sees a cell like this it contatenates, in cell-execution order, all of the executed but uncompiled code cells (i.e. everything since the start of the kernel or the last – compile-code cell). It then compiles the concatenated code, returning the result to the notebook.

For a concrete example of this, see [examples/the-elm-architecture.ipynb](https://github.com/abingham/jupyter-elm-kernel/blob/master/examples/the-elm-architecture.ipynb).

This is a bit hacky, and we’re actively searching for a better alternative. Ideas are welcome!

# Examples

The examples directory contains a few examples of how to use this kernel. Just go to that directory and run jupyter notebook to see them.

Project details


Download files

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

Source Distribution

elm_kernel-0.21.1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

elm_kernel-0.21.1-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file elm_kernel-0.21.1.tar.gz.

File metadata

  • Download URL: elm_kernel-0.21.1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.6

File hashes

Hashes for elm_kernel-0.21.1.tar.gz
Algorithm Hash digest
SHA256 1b617ec9da7a776b054fb545aa843d1d4afca43b06fb708f2345b601e390a249
MD5 4d5a745cf121b17c9e402be9c4f8e379
BLAKE2b-256 e6c0f2b9939e9d5aab94441b95c6fca5115269971b34984c53d8e528145ca8c7

See more details on using hashes here.

File details

Details for the file elm_kernel-0.21.1-py3-none-any.whl.

File metadata

  • Download URL: elm_kernel-0.21.1-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.6

File hashes

Hashes for elm_kernel-0.21.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b5e923592f06938708b3f7ae498c8b819df6659311f61085f180782ee9d6363f
MD5 f6302670696709292cd351f82b1ffbb0
BLAKE2b-256 3aaec5539d0cced446e1734666cca0f5391af159b028088dbaea841a8d4270c7

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