Bentuk Backus–Naur

Bentuk Backus–Naur (juga dikenali sebagai BNF, Formalisme Backus–Naur, Bentuk Backus Normal, atau Bentuk Panini–Backus) ialah metasintaksis yang digunakan untuk menyatakan tatabahasa bebas konteks, iaitu cara formal untuk menghuraikan bahasa formal.

BNF digunakan secara meluas sebagai notasi tatabahasa untuk bahasa pengaturcaraan, set arahan, dan protokol komunikasi, serta juga sebagai notasi untuk mewakili bahagian tatabahasa bahasa sejadi, umpamanya meter dalam puisi Sanskrit. Kebanyakan buku teks tentang teori bahasa pengaturcaraan dan/atau semantik mendokumenkan bahasa pengaturcaraan dalam BNF. Terdapat banyak perluasan dan kelainan BNF.

Pengenalan

Setiap tentuan BNF ialah satu set petua terbitan yang ditulis seperti berikut

 <simbol> ::= __sebutan__

di mana <simbol> adalah bukan terminal, dan __sebutan__ terdiri daripada satu atau lebih jujukan simbol; jujukan yang lebih banyak dipisahkan oleh bar menegak, '|', menandakan pilihan, secara keseluruhan adalah pengganti yang mungkin bagi yang di sebelah kiri. Simbol yang yang tidak pernah muncul di sebelah kiri adalah terminal. Sebaliknya, simbol yang ada di sebelah kiri adalah bukan terminal dan sentiasa terkurung di dalam <>.

'::=' bermakna simbol yang di sebelah kiri mesti digantikan dengan sebutan di sebelah kanan.

Lihat juga

  • ANTLR, penjana penghurai yang ditulis dalam bahasa pengaturcaraan Java
  • Bentuk Backus-Naur Terimbuh (ABNF)
  • Bentuk Backus-Naur Terluas (EBNF)
  • GNU bison, versi yacc GNU
  • Notasi sintaksis Wirth, alternatif kepada BNF sejak dari tahun 1977
  • Penghurai GOLD BNF
  • Penjana penghurai Yacc, digunakan dengan prapemproses Lex
  • Ungkapan nalar
  • l
  • b
  • s

Jika anda melihat rencana yang menggunakan templat {{tunas}} ini, gantikanlah ia dengan templat tunas yang lebih spesifik.