4 ms·
This looks very cool. There's no overview of how it actually works. It seems to launch a goroutine for each Jupyter code cell but any variables defined are also
by robochat42 8y ago
This looks very cool. There's no overview of how it actually works. It seems to launch a goroutine for each Jupyter code cell but any variables defined are also available for use in later cells so I'm not sure how that works.
Just playing with the code in the mybinder.org it feels responsive enough. As well as for data analysis, this will be a great way to do those quick checks that I like to do in python to confirm how an api works. I've been meaning to start using golang more and this might be how I do it.
- vertis 8y agoMy feeling is that the friction of learning a language has a large impact on the success and adoption of the language. Something like this definitely reduces friction.
- cosmos72 8y agoIt compiles a plugin for each Jupyter cell code with "go build -buildmode=plugin" then loads it. It's easy to see with Linux "lsof -p LGO_PID": it lists, among others, the loaded shared libraries - there is one per Jupyter cell code.
- bm1362 8y agoThis is super cool, but I’d like to know more. You can’t reload plugins without changing the plugin path and any shared references won’t get GC’d, from what I remember. I tried to do server handler hot reloading via plugins and ran into this a while ago.
- chatmasta 8y agoAs someone who hasn't worked with Jupyter beyond a simple iPython shell, this comment sent me down a bit of a rabbit hole. If anyone's interested, here are some links. Jupyter docs for making a kernel: http://jupyter-client.readthedocs.io/en/latest/kernels.html http://jupyter-client.readthedocs.io/en/latest/kernels.html List of jupyter kernels: https://github.com/jupyter/jupyter/wiki/Jupyter-kernels https://github.com/jupyter/jupyter/wiki/Jupyter-kernels Jupyter seems like a cleanly designed piece of software that is easy to integrate with. I like the use of ZeroMQ for the wire protocol.
- carreau 8y agoSorry it's my job to nitpick. IPython is upper case I and P. We don't want to upset the fruit giant.