My point was that we don't need React VDOM because it's duplicating what Reagent is already doing. When changes in the DOM are driven by changes in the data we know precisely what nodes need to be virtual. I agree that everything Svelte does can be done using a macro. Basically, you can generate the DOM nodes in the browser, and keep references to the ones that are associated with the data elements. Whenever the data changes you repaint the nodes with updated values. You could easily do batching as well, where you dispatch repaints at intervals.
I completely agree with your React assessment. I think that long term it's much better to develop a native cljs ecosystem that's designed around cljs idioms from the ground up.