Re:How I made a website with Svelte
by ricardobeat on Saturday December 28, 2019 @01:19PM
(#21900605)
Most modern frameworks can be AOT compiled in that sense - React, Vue, Riot - they load JS code only at runtime, but still use templates (VDOM, strings or another representation) as blueprints to update/manipulate the DOM. AFAIK Angular still uses dirty checking; Angular Ivy, yet to be released, will move to something a little closer (incremental-dom), but still not the same.
What Svelte does is precompile the UI update code[1], changing text nodes, attributes, children, targeting DOM nodes directly. Think Prepack[2] vs DOM diffing.
Re:How I made a website with Svelte
by paulddraper on Saturday December 28, 2019 @04:14PM
(#21901774)
> Think Prepack
Angular compiler is certainly an optimizing compiler.
> Angular Ivy, yet to be released
Ivy became an opt-in feature of the Angular CLI earlier this year with Angular v8.
> AFAIK Angular still uses dirty checking
Ivy uses "dirty checking" too [1]. AFAIK Ivy and pre-Ivy operate on similar fundamental principals, which is why Ivy is a drop-in replacement.
[1] https://indepth.dev/what-every-front-end-developer-should-kn...
It's only recently that it started producing multiple packages simultaneously, however (to serve up a package optimized for the client's web platform).