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 revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
rfc:ast_based_parsing_compilation_process [2013/08/24 19:13] – add ML discussion nikicrfc:ast_based_parsing_compilation_process [2014/08/18 16:46] nikic
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.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1