rfc:ast_based_parsing_compilation_process

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
rfc:ast_based_parsing_compilation_process [2013/08/24 19:13]
nikic add ML discussion
rfc:ast_based_parsing_compilation_process [2017/09/22 13:28] (current)
Line 1: Line 1:
-====== Request for Comments: Moving to an AST-based parsing/​compilation process ======+====== Request for Comments: Moving to an AST-based parsing/​compilation process ​(obsolete) ​======
   * Date: 2012-09-04   * Date: 2012-09-04
   * Author: Nikita Popov <​nikic@php.net>​   * Author: Nikita Popov <​nikic@php.net>​
-  * Status: ​Under Discussion+  * Status: ​Obsolete
   * [[http://​markmail.org/​message/​trt5oz5uioxe3fdv|Mailing list discussion]]   * [[http://​markmail.org/​message/​trt5oz5uioxe3fdv|Mailing list discussion]]
 +  * Superseded by: [[rfc:​abstract_syntax_tree|Abstract Syntax Tree RFC]]
  
 ===== Introduction ===== ===== Introduction =====
 +
 +**Note: This RFC has been superseded by another [[rfc:​abstract_syntax_tree|Abstract Syntax Tree RFC]].**
  
 Currently PHP uses a single-pass compilation process, i.e. the parser directly invokes opcode compilation routines. Most other languages on the other hand use an intermediary structure to separate those two phases: The parser only emits an abstract syntax tree (AST), which is then used by a separate compiler to emit instructions. The use of an AST decouples the two phases and as such allows for greater flexibility and deeper analysis. Currently PHP uses a single-pass compilation process, i.e. the parser directly invokes opcode compilation routines. Most other languages on the other hand use an intermediary structure to separate those two phases: The parser only emits an abstract syntax tree (AST), which is then used by a separate compiler to emit instructions. The use of an AST decouples the two phases and as such allows for greater flexibility and deeper analysis.
rfc/ast_based_parsing_compilation_process.1377371582.txt.gz · Last modified: 2017/09/22 13:28 (external edit)