From https://arxiv.org/pdf/2303.06777, section 4.3 Current Approach: Non-persistent Tools:
Although Observable is indeed close to this goal, it fails to achieve it. The most important limitation standing in the way is that, although Observable cells can render UI, this UI cannot persistently modify an underlying program. That is, even though an Observable cell can render an arbitrarily rich tool as part of its output, interactions with this tool cannot be “saved” back to the notebook, and their effects will always disappear when the notebook is reloaded. If programming tools are to be part of the process of writing programs, rather than just ephemeral use thereof, rich UIs must be able to modify the underlying program.
The appeal of live, rich (& persistent) tools is strong enough that several platforms, including Observable, have added them as one-off features. Observable has a “Data Table Cell” feature, which lets the user embed a live, rich direct-manipulation table editor in place of an ordinary cell [57].
Similarly, the computational notebook Hex offers several “no-code” cells: live, rich tools for building charts, pivoting and filtering data, and other specific tasks [58]. In both cases, the tools are specially built into their respective platforms and can access persistence features that are not available to third-party tools.
this seems a recurring use case that people keep re-inventing...
From https://arxiv.org/pdf/2303.06777, section 4.3 Current Approach: Non-persistent Tools:
this seems a recurring use case that people keep re-inventing...