The V8 Engine contains both Ignition “Interpreter” (which is an interesting name for something that not only interprets) and TurboFan Compiler. TurboFan compiler helps to optimize “hot” parts of code by compiling it into machine code.
However, when it comes to Ignition Interpreter. It can produce byte code and then execute it. To create the byte code, however, it needs to “compile/transform” the AST (Abstract Syntax Tree). Is Ignition’s ability to do it (create the byte code) possible only because it was built on TurboFan which itself can “compile” code?