III. DEFINISI DAN DESKRIPSI BAHASA
Bahasa dapat didefinisikan sebagai Skema generatif, yakni suatu prosedur untuk menggenerasi semua kalimat legal dalam bahasa tersebut, atua sebagai rekognisi, yaitu dimana suatu prosedur didefinisikan untuk memutuskan legalitas suatu kalimat.
Metode generatif lebih umum dalam konteks definisi bahasa pemrograman, namun rekognisi lebih dekat dengan definisi bahasa implisit yang dihasilkan oleh kebanyakan compiler (program penerjemah bahasa pemrograman).
Definisi bahasa digunakan untuk :
- Menghasilkan semua kalimat atau pernyataan legal dalam suatu bahasa.
- mengecek legalitas suatu kalimat atau pernyataan (agar tidak terjadi ambigius).
IV. KLASIFIKASI GENERATIF BNF
BNF (Backus Naur Form) adalah metalanguage sintaktis yang umum digunakan sebagai notasi untuk mempresentasikan generasi bahasa. Disini terjadi sedikit perbedaan dengan metalanguage yang kita gunakan sebelumnya. Disini, Metavariabel atau kelas sintaks ditulis dengan diapit simbol < dan >. Jika kita menggunakan notasi ini, maka simbol adalah anggota dari element Vn sedangkan simbol “sentences” adalah element dari Vt. Dengan cara ini kita tidak ragu-ragu melihat apakah suatu simbol merupakan anggota Vn ataukah anggota Vt.
BNF secara intensif telah banyak digunakan dalam pendefinisian secara formal berbagai bahasa pemrograman. Bahasa pemrograman populer yang menggunakan deskripsi BNF adalah ALGOL. Sebagai contoh, pendefinisian sebuah identifier di dalam BNF adalah sebagai berikut :
Catatan : simbol ::= dapat digunakan sebagai pengganti simbol → di dalam grammar, dan simbol | dipakai untuk memisahkan 2 produksi di ruas kanan sebagai hasil produksi ruas kiri yang sama.
Simbol ::= dan | berturut-turut dapat diartikan sebagai “didefinisikan sebagai” dan “atau”.
Klasifikasi generatif BNF (Backus Naur Form) biasanya digunakan untuk Menghasilkan kalimat legal atau pernyataan legal dan Mendefinisikan statement dalam Bahasa Tingkat Tinggi.
Tidak ada komentar:
Posting Komentar