Welcome to MetaCall Jupyter Kernel’s documentation!

MetaCall Jupyter Kernel is an open-source wrapper kernel that implements cross-language function calls through the MetaCall Core and the Polyglot REPL. MetaCall Core is an open-source library that brings the polyglot programming experience to Developers. With MetaCall, developers can embed different programming languages through an easy-to-use high-level API.

The Kernel exposes the MetaCall Core API which can be loaded and launched through a Jupyter Notebook interface. With this Notebook, the users can try out writing, mixing and embedding code in different programming languages.

When a Jupyter notebook of type metacall_kernel is opened, the Kernel starts a new Polyglot REPL subprocess. In fact, the metacall_kernel makes the kernel behave like a wrapper over the Polyglot REPL subprocess where standard input is imparted and the standard output is fetched and displayed on the client interface.

To put it in a nutshell, metacall_kernel essentially comprises three files which has to be installed:

Cell input in the Jupyter notebook is taken by kernel.py and sent via repl.js to Polyglot REPL running through the subprocess. Output from Polyglot REPL is collected by repl.js and given back to kernel.py where it is analysed and transformed into an output format that the Jupyter notebook understands, and thus eventually displayed.