32
atau setiap produksinya berbentuk:
A
?
a
atau A ? B a
A, B ? N
a
?
T*
Bahasa pemrograman pada umumnya dapat dibentuk dengan tata bahasa bebas
konteks.
2.3.3 Backus-Naur Form
dan
Extended
Backus-Naur Form
Bentuk
Backus-Naur
(Backus-Naur Form)
hampir
sama
dengan
tata
bahasa
bebas
konteks
(Sebesta,
2002,
p110).
Karena
nonterminal-nonterminal
dalam
sebuah
spesifikasi
bahasa
pemrograman sangat
banyak,
maka
tidak
cukup
menuliskan
setiap
nonterminal
menggunakan satu
huruf.
Karena
itu
dalam
spesifikasi bahasa setiap
nonterminal dalam
BNF sering dituliskan di dalam tanda
<..>, walaupun notasi ini tidak selalu dipakai. Sebagai contoh, salah satu produksi E
pada contoh tata bahasa sebelumnya dapat dinyatakan dengan <ekspresi>
?
<ekspresi> + <ekspresi>.
Extended
Backus-Naur Form
(EBNF) adalah BNF
yang diberi tambahan
notasi
untuk
mempersingkat penulisan.
Notasi-notasi tersebut
dijelaskan
sebagai
berikut.
Bagian
optional
Dituliskan
di
antara
tanda
kurung
siku,
menunjukkan bahwa
bagian
tersebut boleh tidak ada.
|