News for hackers. Stuff that matters.
Re:Virtual DOM is pure overhead (2018) by hn_throwaway_99 on Sunday May 19, 2019 @12:42AM (#19951482)
> This is what I understood the claim that VDOMs are faster than the real DOM meant - and the article is pretty much eliding this detail.

I disagree with this. I think the major key insight and innovation with React, which this article fully acknowledges, is that it is much easier to think about declarative UI as solely a function of the current state without having to think about the transitions to arrive at that state, and, importantly, the virtual DOM lets you do that performantly.

In other words, to take the example from the article, it would be great if we could have an "onEveryStateChange() { document.body.innerHTML = renderMyApp(); }" function, but doing that would be much too slow because it would recreate the full, real DOM. Using the virtual DOM lets you write essentially the same code, but in a performant manner, and I think the article is clear on this fact.

I'm not familiar with Svelte, but the article has peaked my interest because it is making it sound like it lets you write declarative UI but without needing to do the full virtual DOM diffing.

Re:Virtual DOM is pure overhead (2018) by floatboth on Sunday May 19, 2019 @05:41AM (#19952403)
lit-html also lets you write declarative UI without diffing (and use actual HTML tag syntax without any build tools): https://lit-html.polymer-project.org

and LitElement gives you a base class for Custom Elements that uses lit-html with Shadow DOM: https://lit-element.polymer-project.org

Re:Virtual DOM is pure overhead (2018) by ben509 on Sunday May 19, 2019 @10:17AM (#19953370)
Svelte is a compiler, so I think it's figuring out the possible state changes as part of compilation. Contrast with React where any component can return any elements at any time.
Re:Virtual DOM is pure overhead (2018) by oraphalous on Sunday May 19, 2019 @12:46AM (#19951497)
See my reply to Chris_Newton's earlier response to my comment. :)