エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
PHP7 で利用できる php-ast 拡張モジュールを導入して、PHP のプログラムのファイルサイズと抽象構文木... PHP7 で利用できる php-ast 拡張モジュールを導入して、PHP のプログラムのファイルサイズと抽象構文木のノード数の関係をプロットしてみます。 PHP7 では、プログラムを実行する際、構文解析の結果を抽象構文木 (Abstract Syntax Tree) の形にして、それからバイトコードを生成するようになりました*1。抽象構文木を作ってフェーズを分けることには、コンパイラの実装の見通しがよくなる、さまざまな最適化を実装しやすくなる、といった利点があります。このようにフェーズを分けることはコンパイラの実装では一般的で、下記の Wikipedia の説明にもあるように、おおまかには、抽象構文木を作るところまでの処理をフロントエンド、抽象構文木を解析、最適化して実行コードを出力する処理をバックエンドと呼びます。 コンパイラ - Wikipedia 抽象構文木はコンパイラの内部で利用さ