wew, sekitar 5 bulan yang lau gw dapet matakuliah Teori Bahasa dan Automata, dan kata Mrs Mira (selaku dosen gw) katanya ini baik kalo kita mo buat bahasa pemrograman baru ![]()
wew, kayaknya gak perlu dipelajari
, wonk gw gak kan bikin bahasa pemrograman baru kok ![]()
tapi ternyata pas kesini, ternyara di automata juga belajar “parsing”
wkkkkkkkkk ![]()
wah gak nyangka makin kesini ternyata automata makin penting
, contohnya kalo kita bikin aplikasi yang butuh parsing, dan juga regex ![]()
ternyata bahasa pemrograman yang dimaksud tuh bukan hanya kayak java, C++, tapi bisa juga MySQL ![]()
jadi nanti gw pengennya bikin bahasa SQL baru, jadi kalo biasanya kita pake “SELECT * FROM TABLENAME”, nanti gw pengennya kayak gini “TAMPILKAN SELURUH DATA DARI TABEL ORANG” heheheh, kayaknya keren!!!!
nach contoh sederhana gw sekarang bikin apliaksi kalkulator pertambahan (simple aja) pake automata ![]()
jadi aturan produksinya kayak gini :
S = A + A + A + …
A = 1…n
n = (Max Integer)
jadi sekarang tingal kita buat DFA nya
, singkat cerita dah gw buat kayak gini :

wew, jadi gini keterangannya :
A = State Awal
B = Final State
A(1…9) -> B
B(0…9) -> B
B(+) -> C
C(1…9) -> B
btw, ngerti gak ama diagram DFA diatas? kalo gak ngerti mungkin harus belajar automata dulu ![]()
sekarang kita bua refresentasi dari A, B, C ![]()
nah karena A, B, C punya kesamaan, yaitu sebagai State jadi kita kita buat aja interface untuk State yang isinya validateCharacter(char), isFinalState(), isStartState()
:

