Mengenal Whitespace: Bahasa Pemrograman yang Tidak Terlihat

Dalam dunia coding, kita terbiasa melihat kode yang penuh dengan karakter dan simbol. Namun, ada satu bahasa pemrograman yang sangat unik dan berbeda dari yang lain: Whitespace. Sesuai dengan namanya, bahasa ini hanya menggunakan karakter “tak terlihat” seperti spasi, tab, dan baris baru (newline) untuk menulis program. Akibatnya, kode yang dibuat dengan Whitespace tidak terlihat seperti kode pada umumnya.

Bagaimana Whitespace Bekerja?

Alih-alih menggunakan huruf, angka, atau simbol, Whitespace bergantung pada kombinasi spasi, tab, dan baris baru untuk mewakili perintah (command) dan data. Setiap instruksi dalam Whitespace dimulai dengan satu dari tiga kombinasi karakter yang disebut Instruction Modification Characters (IMC):

  1. [Spasi]: Perintah ini digunakan untuk memanipulasi stack data.
  2. [Tab][Spasi]: Perintah ini digunakan untuk operasi aritmatika, seperti penjumlahan, pengurangan, atau perkalian.
  3. [Tab][Tab]: Perintah ini digunakan untuk mengontrol aliran program.

Sebagai contoh, jika Anda ingin menambahkan dua angka, Anda perlu menulis serangkaian karakter spasi dan tab. Angka itu sendiri diwakili dalam bentuk biner, di mana spasi adalah 0 dan tab adalah 1. Program diakhiri dengan kombinasi [Tab][Newline].

Tujuan Diciptakannya Whitespace

Whitespace diciptakan oleh Edwin Brady dan Chris Morris pada tahun 2003, bertepatan dengan Hari April Mop. Awalnya, bahasa ini dibuat sebagai lelucon dan bentuk eksperimen untuk menunjukkan bahwa bahasa pemrograman tidak harus terlihat seperti kode. Mereka ingin menyoroti bahwa karakter yang kita anggap sebagai spasi kosong bisa memiliki makna dan fungsi yang sama pentingnya.

Meskipun Whitespace tidak praktis untuk pengembangan perangkat lunak skala besar, keberadaannya membuktikan kreativitas dan fleksibilitas dalam dunia coding. Ini juga menjadi pengingat lucu bahwa apa yang kita lihat di layar hanyalah representasi dari perintah logis yang mendasarinya.

Mengapa Unik dan Menarik?

Keunikan Whitespace terletak pada fakta bahwa kode-kode lainnya bisa disembunyikan di dalamnya. Misalnya, Anda bisa menulis program C++ dan menyembunyikan kode Whitespace di dalam spasi dan tab yang digunakan untuk indentasi. Ketika program C++ dijalankan, ia akan mengabaikan spasi dan tab. Namun, jika kode yang sama dibaca oleh interpreter Whitespace, ia akan menjalankan program yang “tersembunyi” tersebut.

Ini membuat Whitespace menjadi contoh yang menarik dari seni coding dan permainan kata-kata di antara programmer. Meskipun tidak digunakan untuk pekerjaan serius, bahasa ini menjadi bagian penting dalam sejarah bahasa-bahasa esoterik (bahasa pemrograman yang aneh dan unik) dan terus memukau banyak orang dengan konsepnya yang tidak biasa.

Sumber :

geeksforgeeks

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top