BNF
読み:ビーエンエフ
外語:BNF: Backus-Naur form
プログラミング言語
などを形式的に定義するときに使う
メタ言語
(言語を記述する言語)のひとつ。
ALGOL
(ALGOL 60)の文法を定義(記述)するために作られた。
特徴
殆どのプログラミング言語は、BNFで記述されている。
さらに、BNFで記述された言語仕様書を元に、その言語の構文解析プログラム(パーサ)を自動的に作成するソフトも存在する(yacc、GNU Bisonなど)。
再検索