"Pemrograman sebagai Filsafat Bahasa Tingkat Tinggi: Perspektif Seorang Lulusan Sastra Inggris yang Terjun ke Dunia Teknologi"

Sebagai seorang lulusan sastra inggris dengan minat yang condong pada linguistik, saya memandang Bahasa pemrograman dari sudut pandang lingusitik dengan cara yang berbeda, seolah semua kejadian itu adalah peristiwa baru, meski pernah mengalami, namun perasaan dan kesadaran yang terbangun sangat berbeda dari sebelumnya. Kesadaran terhadap persitiwa ini jika dilihat dari sudut pandang filsafat Husserl dan Heideger tentang fenemonologi disebut dengan terlemparnya kesadaran eksistensial pada realitas lain/baru/maya, yang menyebabkan seseorang tersadar dan sepenuhnya bangun, fokus pada peristiwa yang sedang terjadi (Dasein). Contoh, saat kita hampir saja mengalami kecelakaan lalu lintas dengan sepeda motor, namun selamat sepersekian detik dari tragedi tertabrak, keinsyafan, dan ke mahfuman kita terhadap kesadaran itu adalah dasein, kita terlepas dari realitas nyata, terhubung secara transedental pada realitas yang lebih sublim dan intim dengan tragedi dan kengerian yang dibayangkan yang mungkin saja bisa terjadi. Pengalaman fenemonologis tersebut mewujud menjadi apa yang sering dikatakan Descartes tentang “Cogito ergo sum”, atau dengan kata lain “Aku berpikir, maka aku ada”. Kesadaran itu membawa seseorang pada istilah prancis yang disebut “Raison d’etre” alasan untuk mengada. Begitupun dengan saya, selama 3,5 tahun belajar lingusitik dan memulai karir/terjun pada industri IT dan mengambil spesifikasi mengenai software yang menjurus pada Bahasa pemrograman (coding), pengalaman itu terjadi pada saya. Pakem-pakem yang selama ini saya pahami pada Bahasa, menjadi lebih dalam dan kagum sekaligus bergeser atas prasangka sekaligus asumsi saya, karena semakin jauh dan dalam saya mempelajari Bahasa pemrograman, semakin teoritis juga semakin praktis saya terhadap bahasa(lingusitik) ataupun pada pemrograman(coding). Oleh karena itu, seringkali saya, beropini bahwa bahasa pemrograman adalah filsafat Bahasa Tingkat tinggi, dan programmer adalah filsuf dalam bidang perangkat lunak dan teknologi. Mengapa saya mengatakan demikian, saya akan coba terangkan sedikit dan dimulai dari Bahasa itu sendiri.

Apa itu Bahasa? Menurut Gorys keraf (1994, p.3) Bahasa adalah sebuah sarana untuk berkomunikasi. Bahasa juga sebagai sarana untuk menyampaikan, pendapat, dan argumentasi, serta pikiran pada lawan bicara. Language is arbitrary, begitulah kira-kira Ferdinand De’Saussure (Bapak Linguistik modern) menyatakan postulatnya mengenai sifat dari Bahasa. Sejauh mana sebenarnya batasan kesewenang-wenangan dan Bahasa sebagai alat komunikasi? Batasannya adalah consensus in harmonia progressio, artinya Bahasa dibatasi oleh kesepakatan. Sebagai contoh, kata “Kursi” dalam Bahasa Indonesia bisa disebut “meja”, jika ada syarat yang menengahi konsep dari kata tersebut. Meskipun, secara etimologi setiap kata itu bisa dilacak dari mana sumbernya. Apa syaratnya kemudian, Bahasa bisa dibatasi? Dengan melihat Premis, Proposisi, konklusi, dan silogisme. Premis sebagai sesuatu yang dianggap benar (asumsi/ide), proposisi sebagai pernyataan dari sesuatu yang dianggap benar (bunyi kongkret), kemudian konklusi adalah kesimpulan dari justifikasi dua hal sebelumnya dan terakhir, silogisme, teknik pengambilan kesimpulan dari yang umum ke yang khusus. Artinya, benda apapun bisa dinamai dengan sebutan apapun jika ada kesepakatan dari suatu komunitas atau antar individu tertentu. Apa kemudian relasi lingustik dengan codingan (Bahasa pemrograman)? Relasinya adalah fungsinya sebagai alat untuk berkomunikasi, siapa kemudian yang berkomunikasi, secara umum Bahasa dipakai manusia pada manusia/makhluk ke makhluk, sedangkan Bahasa pemrograman, manusia pada entitas benda tak bernyawa yang memahami komunikasi dengan cara-cara tertentu. Cara-cara tersebut adalah kode-kode komputasi yang bisa diterjemahkan oleh computer dan ditampilkan pada suatu perantara antar-muka yang diterima manusia sebagai informasi. Dari mulai kode biner, kemudian di compile dan dinterpretasi oleh Bahasa pemrograman modern. Tujuannya adalah mencapai fungsionalitas tertentu yang secara konstruktif dibuat untuk memenuhi kebutuhan-kebutuhan yang diperlukan oleh manusia . Secara konstruksi apakah ada persamaan landasan-landasan inti yang membangun antara koding sebagai Bahasa program untuk mesin dan lingsuitik sebagai Bahasa program untuk manusia?

Ada, persamaannya adalah mereka sama-sama dibangun oleh unit-unit kecil yang membentuk menjadi satu kesatuan khusus yang disebut dengan sintak. Keutuhan serta pakem-pakem dari sintaksis tersebut disebut dengan gramatika. Apakah Bahasa pemrogramman memiliki gramatika? Tentu saja, Bahasa pemrograman pun memiliki gramatikanya sendiri. Contoh, sintaksis seperti ini:



Gambar kode diatas adalah barisan sintak dari gramatika Bahasa pemrograman. Saat pertama kali berpapasan dengan sintaksis seperti itu, saya tidak begitu mampu memahami susunan kata dari setiap baris kalimat yang ditutup oleh tanda titik-koma yang ada dikodingan tersebut. Diartikan secara literal, saya malah terjebak dengan keruwetan cara berpikir saya untuk memahami maksud dari struktur koding tersebut. Dalam Bahasa (lingusitik) meski tercecer atau kurang jelas apa yang diungkapkan, manusia dalam berkomunikasi masih bisa memahami makna-makna Bahasa saat berbincang, karena manusia ter”occupied” oleh sesuatu yang namanya konteks dan interpretasi meskipun tersamar (implisit), namun akan berbeda kemudian jika kita berurusan dengan sintaksis kalimat kodingan, karena meskipun mereka secara semiotika adalah simbol-simbol yang mewakili sesuatu, itu akan masih terasa sulit dipahami jika kita tidak mengetahui/menguasai konsep-konsep dasar dari konstruksi kodingannya. 

Barangkali mempelajari Bahasa pemrograman bisa berhasil dipahami seperti mempelajari Bahasa inggris dengan semangat ogah-ogahan ala anak semester 3, jika tujuannya memang praktikal. Kita tidak perlu memahami secara teoritis keseluruhan sintak dari koding, dan fokus pada tujuannya, yaitu fungsi untuk berkomunikasi. Namun, yang harus dipahami adalah adanya “Gap” antara memahami dasar dan mengetahui tujuan, gap itu adalah “Konsep”. Karena, mungkin, jika konsep sudah dipegang maka benar apa yang pernah teman saya katakan tentang perbedaan Bahasa pemrograman dan pemrograman. Pemrograman adalah tujuan, Bahasa pemrograman adalah alat yang digunakan menuju tujuan, dan konsep pemrograman adalah cara-cara kita menggunakan Bahasa pemrogramannya. Itulah mengapa kemudian saya mengatakan bahwa Bahasa pemrograman adalah filsafat Bahasa Tingkat tinggi, dan programmer adalah filsufnya, karena saat melihat konstruksi kodingan, secara tidak langsung (orang IT) sadar pada partikel-partikel yang membentuk sintaksis gramatika Bahasa pemrograman, persis seperti bagaimana linguis memandang kalimat atau sintaksis gramatika Bahasa dengan susunan Fonetik, Fonologi, Morpologi, sintak, semantik, dan pragmatik. So, opini saya kodingan bersifat teoritis sekaligus praktis.

 


Comments

Popular posts from this blog

Komputasi, Lingustik, dan Dasein ala Heidegger

Terbentur, terbentur kemudian terbentuk: the experiences of daily activites at UKRI