Could we make a Jupyter Notebook for Rust?


#1

Continuing the discussion from [ANN] cellsplit - tool for Matlab programmers:

This tool looks like a promising start on the ability to iteratively develop in Rust, just like Jupyter Notebooks allow for Python. But I think that if this (or something similar) was really developed and given some attention, Rust could have something that would make figuring out how to do something in much less painful by granting the ability to compartmentalize code into different cells and run them separately while having a persistent state across the Notebook.

This would really make messing around and experimenting to understand things a lot simpler. Thoughts?

Here’s a list of all the implementations of the Jupyter Notebook in various languages, which might be a helpful starting point: https://github.com/jupyter/jupyter/wiki/Jupyter-kernels. I don’t really have the knowledge to lead an endeavor such as this, but I’d be glad to learn on the job and assist where I can be useful, if this turns out to be something that the community would like to pursue.


#2

Quick search led me to https://github.com/pwoolcoc/jupyter-rs.


#3

Well that’s embarrassing. I guess I didn’t search thoroughly enough. But this would be something that would be nice to make a “first class” citizen in Rust, particularly since Rust is so unique that learning how it works takes a not insignificant amount of time and confusion.


#4

My cellsplit program isn’t really related, since it’s a notebook-like thing
for Matlab code, not Rust code, but I’d be interested in a Jupyter kernel
for Rust.


#5

For a full-featured Jupyter notebook we’d need a working REPL.


#6

I found a git repo that has attempted to implement a REPL: https://github.com/murarth/rusti. This seems to have lost its support over the last 3/4 of a year, but it might be a good start.


#7

Well, we just need to port cling
to Rust! Should be trivial…


#8

haha yeah, https://locka99.gitbooks.io/a-guide-to-porting-c-to-rust/content/