jupyter_wire 0.0.2

Jupyter kernel written in D


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

jupyter-wire

Build Status

An implementation of the Jupyter wire protocol in D.

This library was written so that any backend written in or callable by D can be a jupyter kernel. A backend must be a D type that satisfies the following compile-time interface:

LanguageInfo info = T.init.languageInfo;
ExecutionResult result = T.init.execute("foo");

For a backend type that doesn't require initialisation, the following code is sufficient:

struct MyBackend {
    enum languageInfo = LanguageInfo(/*...*/);
    ExecutionResult execute(in string code) {
       // ...
    }
}

mixin Main!MyBackend;

Otherwise, initialise as necessary and call Kernel.run:

import jupyter.wire.kernel: Kernel;
auto k = kernel(backend, connectionFileName);
k.run;

Please consult the example directory for a working (albeit silly) kernel.

Windows

Set the environment variables ZMQ_DIR_32 and/or ZMQ_DIR_64 for where to find the zmq.lib when building. Remember to copy the revelant .dll to the executable path.

Authors:
  • Atila Neves
Dependencies:
zmqd, asdf
Versions:
0.1.3 2021-Apr-09
0.1.2 2021-Apr-02
0.1.1 2021-Mar-24
0.1.0 2020-Aug-14
0.1.0-beta.1 2019-Dec-02
Show all 15 versions
Download Stats:
  • 0 downloads today

  • 0 downloads this week

  • 0 downloads this month

  • 70855 downloads total

Score:
1.5
Short URL:
jupyter_wire.dub.pm