Langsung ke konten utama

Postingan

Menampilkan postingan dari Oktober, 2020

Eksplorasi Parsing Expression Grammar (PEG) dengan PEG.js (Part 1)

Parsing Expression Grammar (PEG) pertama kali diperkenalkan oleh Bryan Ford pada tahun 2004 melalui paper -nya yang berjudul “ Parsing Expression Grammars: A Recognition-Based Syntactic Foundation ”. Alasan Ford memperkenalkan PEG adalah karena penggunaan CFG ( context-free grammar ) untuk mengekspresikan dan mem- parse bahasa berorientasi mesin dirasa sulit. Ini ada kaitannya dengan kemampuan generative grammar dalam mengekspresikan ambiguitas. Berhubung ambiguitas tadi merupakan salah satu permasalahannya, PEG pada akhirnya tidak memperkenalkan ambiguitas sama sekali. Akibatnya, PEG menggunakan prioritized choice yaitu mengambil pilihan pertama yang sesuai. Anggap saja ada tiga pilihan yang cocok dengan ekspresi yang kita tulis. Dalam hal ini PEG hanya akan mengambil pilihan pertama saja dan mengabaikan dua pilihan setelahnya. Tulisan kali ini akan memberikan demonstrasi penggunaan PEG untuk mem- parse suatu string yang kemudian diubah bentuknya ke dalam structured form (bent