Hi internals! I've created a draft RFC and implementation for the introduction of an Abstract Syntax Tree (AST) as an intermediate structure in our compilation process:
https://wiki.php.net/rfc/abstract_syntax_tree The RFC outlines why an AST is beneficial, how it impacts performance and memory usage of the compile process and what changes to syntax or behavior it introduces. Furthermore the RFC contains an outline of how the current implementation works and what APIs it provides. This section is just an overview and I hope to extend it in the future. Note: I'm on vacation as of tomorrow and wanted to put this up to discussion beforehand. I won't be able to implement any feedback while I'm away, but can of course answer questions :) Thanks, Nikita