Recently I read a fantastic article walking through jit optimizations and how changes to source code could impact those: Side effecting a deopt. As I shared it with folks, a few of them had some questions about low level optmizations in general and I wrote this as a little explainer for people who are interested in learning more about how javascript runtimes can model/compile/jit/execute their js code. So I wrote this explainer to go along with the original article.