This is a repository for learn Building a Virtual Machine and its internals. My main goal is to have a deeper understanding of programming languages internals, especially the Javascript engine.
----- What I already did -----
----- What's next -----
- (async fetch (key) ...)
- Arrays: (class Array ...) or an array literal: (array 1 2 3)
- Optimizing compiler: pre-evaluate expressions, const propagation, etc.
- Value representation
- Tagged union (current)
- Tagged Pointer
- NaN-boxing or NaN-tagging
- Static vs Dynamic (current) classes vs Prototypes
- JIT compilation - translate to native code at runtime
- Etc