JuliaPluto / PlutoSliderServer.jl

Web server to run just the `@bind` parts of a Pluto.jl notebook
https://computationalthinking.mit.edu/
The Unlicense
135 stars 18 forks source link

Allow clients to request the diff with their current state #78

Open pankgeorg opened 2 years ago

pankgeorg commented 2 years ago

Diffing with the initial notebook state can be significantly bigger than diffing with the "previous" state, especially if there is a file input somewhere. In this proposal we would send both the current C and the previous P state values and caclulate the diff between P and C, then send this diff back to the client.

Given that state P must be already calculated by the same server, it could be memoized already somewhere in the server, to avoid duplicate calculations (given no rand(), of course)

Note that PlutoSliderServer currenty always diffs to the initial state of each notebook.

fonsp commented 2 years ago

Tricky! But I am open to contributions here :)