clerk icon indicating copy to clipboard operation
clerk copied to clipboard

Improve show performance by only evaluating each `:render-fn` once

Open mk opened this issue 2 years ago • 0 comments

Previously each node in the viewer tree would carry a viewer node and so we'd read and evaluate it multiple times. Now we build up a lookup table from hash to viewer and do it only once per unique viewer.

TODO:

  • [x] dedupe viewers
  • [x] convey closing parents via opts instead of viewer
  • [x] Adjust tests
  • [x] Fix closing parens for (concat (range 20) [#{1 2 3} :foo])

mk avatar May 22 '23 10:05 mk