News for hackers. Stuff that matters.
Re:Pluto.jl – a reactive, lightweight, simple notebook by WolfOliver on Friday August 28, 2020 @07:38AM (#24303688)
would be curious what Jupyter notebooks things are better with Pluto.jl, can you name some concrete points?
Re:Pluto.jl – a reactive, lightweight, simple notebook by celrod on Friday August 28, 2020 @07:49AM (#24303754)
1. Dependency graph for cells, letting it automatically rerun what's needed when you change one. This keeps everything up to date.

2. git-friendly.

Re:Pluto.jl – a reactive, lightweight, simple notebook by WolfOliver on Friday August 28, 2020 @11:46AM (#24306241)
I wonder how they are doing it? simply re-evaluating every cell?
Re:Pluto.jl – a reactive, lightweight, simple notebook by ddragon on Friday August 28, 2020 @01:54PM (#24307902)
It's mentioned in the video [1], it does static analysis of the code to create a graph of dependencies (for example which cell uses a variable defined by another cell), so when you update any cell it will find what cells are affected by the change (the downstream nodes on a directed acyclic graph) and only evals the code on them (instead of running everything). Julia is particularly good for those kind of code analysis since it's a very Lispy language.

It also does a trick of creating new modules to manipulate scope to make deleted variables/import/cells invisible (and therefore free to be garbage collected).

[1] https://youtu.be/IAF8DjrQSSk?t=596

Re:Pluto.jl – a reactive, lightweight, simple notebook by jonniedie on Friday August 28, 2020 @10:12AM (#24305055)
Reproducibility is a huge one for me. I’m often doing exploratory work that I’ll want to save in its current state and pick back up a few months (or even years) later. With Jupyter, this almost never works because I am constantly editing and running cells out of order as I’m exploring things. If I save at any given point, there is no guarantee that the notebook will be in the same state when I reopen it and re-run the cells.

With Pluto and other reactive notebooks, you have a guarantee that the code you see on the screen will produce the same results. So if you go back and edit cells out of order, save the notebook, then open it and re-run later, it will always be in the same state you left it in.

Re:Pluto.jl – a reactive, lightweight, simple notebook by Oreb on Friday August 28, 2020 @07:55AM (#24303797)
In addition to what celrod said: Jupyter doesn't have an equivalent of Pluto's @bind macro, does it?
Re:Pluto.jl – a reactive, lightweight, simple notebook by JustFinishedBSG on Friday August 28, 2020 @08:00AM (#24303829)
It's not as elegant but kinda exists

https://ipywidgets.readthedocs.io/en/latest/

Re:Pluto.jl – a reactive, lightweight, simple notebook by Oreb on Friday August 28, 2020 @08:11AM (#24303908)
Thank you! I hadn't seen that.