KEDUDUKAN TEORI BAHASA DAN OTOMATA PADA ILMU KOMPUTER

              Ilmu komputer memiliki dua komponen utama : pertama, model dan gagasan mendasar mengenai komputansi. kedua, teknik rekayasa untuk perancangan sistem komputansi, meliputi perangkat keras dan perangkat lunak , khususnya penerapan rancangan dari teori. Teori bahasa dan otomata merupakan bagian pertama. Secara teoritis ilmu komputer diawali dari sejumlah disiplin ilmu, antara lain ahli biologi mempeljari neural network, insinyur elektro mengembangkan switching sebagai tool untuk mendesain hardware, matematikawan bekerja mendasarkan logika, dan ahli bahasa menyelidiki tata bahasa untuk natural language.

               finite state automata dan ekspresi regular awalnya dikembangkan  berdasarkan pemikiran neural network dan switching circuit. finite state automata merupakan tool yang sangat berguna dalam perangan  lexical analyzer, yaitu bagian dari kompilator yang mengelompokan karakter- karakter dalam token, yang berupa unit terkecil seperti nama,variable dan keyword. Dalam penulisan kompilator secara otomatis akan mentransformasikan ekspresi regular kedalam finite state automata untuk dipakai sebagai penganalisa leksikal. finite state automata dan ekspresi regular dipakai pula dalam teks editor, pattern, maching, sejumlah pemrosesan teks, dan program file searching, dan sebagai konsep matematis untuk aplikasi di disiplin lain seperti logika.
                      
               Suatu bahasa pemrograman harus didefinisikan secara tepat. spesifikasi dari sebuah bahasa pemrograman meliputi hal - hal berikut :

  •     Himpunan simbol - simbol (alphabet) yang bisa dipakai untuk membentuk program yang benar.
  • Himpunan program yang benar secara sintaksis.
  • 'Makna' program tersebut.
              Tata bahasa bebas konteks dan dan push down automata telah banyak memberikan bantuan pada spesifikasi dari bahasa pemrograman dan perancangan parser, bagian penting dari kompilator.  Spesifikasi formal dari bahasa pemrograman telah mengganti deskripsi yang tidak lengkap  maupun ambigu dari bahasa. Pemahaman tentang kemampuan  push down automata telah menyederhanakan parsing. Pada mulanya pengembangan parser untuk kompilator - kompilator terdahulu merupakan masalah yang sulit, dengan hasil yang tidak efisien. Dengan pengetahuan tata bahasa bebas konteks  perancangan parser  bukan lagi suatu masalah.

              Suatu teori hanya menarik bila itu membantu dalam pencarian solusi terbaik. Tanpa penerapan, timbulnya pertanyaan "Mengapa mempelajari teori?". Teori memberikan konsep dan prinsip yang menolong untuk memahami "prilaku" dari suatu disiplin ilmu. Bidang ilmu komputer meliputi topik yang luas, dari perancangan mesin sampai pemrograman. Disamping perbedaan yang ada, terdapat prinsip - prinsip yang umum dipakai. untuk mempelajari prinsip dasar inilah kita mengkosntruksi model abstrak dari komputer dan komputansi. model ini memiliki fungsi - fungsi yang penting dan umum pada perangkat keras  maupun perangkat lunak. Meskipun model tersebut terlalu sederhana untuk diterapkan langsung pada dunia nyata, keuntungan yang diperoleh dari mempelajarinya adalah memberikan landasan, yang mana suatu pengembangan didasarkan. pendekatan dengan model ini tidak hanya dilakukan pada ilmu komputer, tetapi juga pada ilmu sains lainnya. Beberapa gagasan yang di utarakan memiliki penerapan yang penting misalnya, pada perancangan digital, bahasa pemrograman dan kompilator.

1 komentar: