Tentang AutomataLab
Capstone Project untuk mata kuliah Teori Bahasa dan Otomata.
Latar Belakang
Teori Bahasa dan Otomata merupakan fondasi penting dalam ilmu komputer, mencakup konsep Finite State Automata, Regular Expression, Context-Free Grammar, Pushdown Automata, hingga Hierarki Chomsky. Konsep-konsep ini seringkali abstrak dan sulit dipahami hanya melalui teori di atas kertas.
AutomataLab dikembangkan sebagai Capstone Project untuk menjawab tantangan tersebut — menghadirkan simulator interaktif berbasis web yang memungkinkan mahasiswa memasukkan definisi automata atau grammar mereka sendiri, lalu langsung melihat hasil eksekusi, trace langkah demi langkah, dan visualisasi diagram state secara real-time.
Tujuan Pembelajaran
- Memahami cara kerja DFA dan NFA melalui simulasi langsung.
- Menghubungkan Regular Expression dengan Regular Grammar dan NFA.
- Memvisualisasikan proses parsing CFG dan simulasi stack pada PDA.
- Memahami transformasi grammar menuju Chomsky Normal Form secara bertahap.
Teknologi yang Digunakan
Arsitektur Aplikasi
Aplikasi dibangun dengan struktur Flask yang modular:
app.py— entry point aplikasi & registrasi blueprintroutes/— definisi endpoint per modul (FSA, Regex, PDA, CNF)models/— struktur data hasil pemrosesanutils/— logika inti algoritma teori bahasa & otomatatemplates/— halaman HTML (Jinja2)static/— CSS, JavaScript, dan aset lainnya
Konteks Akademik
Proyek ini dikerjakan sebagai bagian dari tugas akhir (Capstone Project) mata kuliah Teori Bahasa dan Otomata, dengan fokus pada penerapan konsep teoritis ke dalam bentuk aplikasi web yang fungsional dan mudah digunakan.