Our great sponsors
-
ipython
Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
There's an explanation of how it works: https://github.com/google/evcxr/blob/master/evcxr/HOW_IT_WOR...
That's an impressive amount of hacks under the hood! I thought maybe there would be an interpreter involved, but it really does invoke rustc and then loads the code with dynamic linking.
https://jupyter-client.readthedocs.io/en/latest/messaging.ht...
This looks like it does something with MIME bundles: https://github.com/jupyter-xeus/xeus-cling/blob/00b1fa69d17b...
ipython.core.display: https://github.com/ipython/ipython/blob/master/IPython/core/...
ipython.display: https://github.com/ipython/ipython/blob/master/IPython/displ...
You can also run Jupyter kernels in a shell with jupyter/jupyter_console:
pip install jupyter-console jupyter-client
I added jupyter notebook support to my nsi[1] crate via evxcr.
It allows you to do a 3D (offline) render with 3Delight (on AWS, if you want) directly into a notebook.
Here is an example notebook[2].
I haven't managed to update the image dynamically while it's rendering (there's no support for that in evxcr). If anyone knows how to do this, I'd be keen to add that too.
[1] https://crates.io/crates/nsi
[2] https://github.com/virtualritz/nsi/blob/master/examples/jupy...
No need for another version, Julia supports custom indices by default. Check out https://docs.julialang.org/en/v1/devdocs/offset-arrays/ and https://github.com/JuliaArrays/OffsetArrays.jl
Not OP, but I like to avoid Jupyter where I can too. I like using a REPL though.
For very interactive, experimental work I like having code in one pane and a REPL in another separate one - so that you can highlight and send snippets of a file to the REPL with a keystroke or two, and the code and results aren't mixed together.
RStudio or Vim Slime[1] would be my favourite examples of this kind of approach.
For more "static" literate programming, I prefer the way RMarkdown and Sweave work to Jupyter Notebooks (though I don't even use R anymore). Both have their strengths and weaknesses of course.
[1] https://github.com/jpalardy/vim-slime