

Most of these compiled frameworks are an extension of their templating languages. Declarative interfaces are easier to reason about when you have systems where the inputs can come from many points and propagate through many related or non-related outputs.

But almost all popular frameworks use some form of ahead of time(AOT) compilation on their templates. The term most often gets associated with frameworks like Svelte or Marko where everything ends up getting processed. To be fair this might be a bit too loose but I want to show that the approach is a spectrum rather than a single target.

Ones where end user code is run through a compiler to produce the final output. To understand what they are doing and more importantly what they can and cannot do. But fast-forward to 2021 and we have many more libraries in this space.Īnd that's why it's more important to familiarize yourself with compilation in JavaScript frameworks. This trend of UI Framework in JavaScript being a language goes back much further. And if you want to take it to its natural extent you might land on, as did in his article Language Servers are the new Frameworks, down to a language itself.īut there are more steps still to go on this path. If you look at the whole range of build tools we use every framework is enhanced by some build ahead process. In 2017 things were already heading that way and have only continued on that trend since. In 2017 Tom Dale, wrote Compilers are the New Frameworks.
