Meet Whitespace: Bahasa Pemrograman Paling Impraktis Dunia?

Penyingkapan: Dukungan Anda membantu menjaga situs tetap berjalan! Kami mendapatkan biaya referensi untuk beberapa layanan yang kami rekomendasikan pada halaman ini.

Whitespace adalah bahasa pemrograman esoterik yang dikembangkan oleh Edwin Brady dan Chris Morris di University of Durham, Inggris. Di Whitespace, hanya spasi, tab, dan baris baris yang memiliki makna, sementara semua karakter non-spasi putih lainnya diabaikan oleh penerjemah..

Jika ini terdengar aneh dan tidak praktis, ya itu benar! Sebenarnya itu’Itulah inti Whitespace.

Sejarah Singkat

Brady dan Morris mendapat ide untuk membuat Whitespace selama percakapan di sebuah pub, pada akhir 2002. Karena sebagian besar bahasa pemrograman mengabaikan karakter whitespace, para pengembang menganggap ini tidak adil bagi anggota set karakter ini, dan memutuskan untuk membuat Whitespace. Kita mungkin harus mencatat bahwa sebagian besar bahasa pemrograman tidak dirancang di pub, jadi ini hanyalah fakta lain yang membuat Whitespace unik.

Whitespace dirilis pada 1 April 2003, jadi pada awalnya itu tampak seperti April Mop yang terlalu rumit’Lelucon. Namun, tanggal rilis 1 April itu murni kebetulan. Sebenarnya, tanggal rilis ternyata cukup berguna, karena menarik banyak perhatian pada Slashdot ketika diumumkan secara resmi.

fitur

Whitespace adalah bahasa pemrograman imperatif berbasis stack yang mendukung. Dukungan untuk nomor floating point tidak diterapkan. Dalam sintaksisnya, hanya karakter spasi putih – spasi, tab, dan umpan baris memiliki arti, semua karakter lain diabaikan. Sebagai konsekuensinya, program Whitespace dapat dimasukkan dalam karakter whitespace dari program yang ditulis dalam bahasa lain, atau dalam file teks biasa.

Secara teori, seorang programmer dapat menulis sebuah novel di sekitar kode Whitespace mereka – kode tersebut akan tetap berfungsi, namun kebanyakan orang hanya akan melihat novel, bukan kode Whitespace yang mendasarinya.

Menjadi bahasa pemrograman esoterik (esolang), Whitespace dibuat untuk menguji batas-batas desain bahasa pemrograman komputer, dan tidak dimaksudkan untuk digunakan untuk pemrograman mainstream. Ini hanyalah bukti konsep, dengan aplikasi praktis yang sangat terbatas, karena itu’Ini jarang digunakan di dunia nyata.

Namun, sebagai demonstran teknologi yang dirancang untuk membuktikan bahwa Anda benar-benar dapat memiliki bahasa pemrograman yang bekerja berdasarkan spasi daripada karakter, itu pasti berfungsi. Sayangnya, Whitespace tidak’t dirancang untuk apa pun lebih dari itu. Itu adalah demo teknologi yang rumit, bukan bahasa pemrograman yang dirancang untuk aplikasi praktis.

Sintaksis

Perintah di Whitespace, serta seluruh kode, terdiri dari urutan spasi, penghentian tab, dan umpan baris. Misalnya, tab-space-space-space melakukan penambahan aritmatika dari dua elemen teratas di stack. Kode ditulis dalam bentuk Parameter Pengubah Instruksi (IMP) diikuti dengan operasi. Whitespace memiliki IMP berikut: “ruang” – manipulasi tumpukan, “tab-space” – aritmatika, “tab-tab” – akses tumpukan, “linefeed” – Alur kontrol, “tab-linefeed” – input output.

Data direpresentasikan dalam bentuk biner, menggunakan spasi untuk 0 dan tab untuk 1, diikuti oleh linefeed, misalnya ruang-ruang-ruang-tab-tab-ruang-linefeed adalah angka biner 000110, yang merupakan 6 dalam desimal.

Contoh berikut dihitung dari 1 hingga 5 dan mencetak angka dari 1 hingga 5, di mana “S” mewakili ruang, “T” – tab, dan “L.” – linefeed:

SSSTL LSSSTSSSSTTL SLS TLST SSSTSTSL TLSS SSSTL TSSS SLS SSSTTSL TSST LTSSTSSSTSTL LSSSTSSSTSTL SLL LLL

Output dari kode di atas adalah:

1 2 3 4 5

Bagaimana dengan menulis Hello World di Whitespace? Nah, itu akan mengharuskan Anda untuk kode hampir setiap huruf dan Anda’d berakhir dengan sekitar 950 instance space, tab, dan linefeed. Itu’Jelas bukan contoh yang bisa kami sertakan dalam pengantar kami tentang Whitespace, tetapi jika Anda’Anda tertarik, dan Anda memiliki terlalu banyak waktu luang, Anda dapat memeriksanya di sini.

Sumber daya spasi putih

Ada hampir tidak ada gunanya mempelajari Whitespace, tetapi jika Anda suka konsep dan Anda ingin belajar lebih banyak tentangnya, atau coba beberapa contoh, lihat sumber daya berikut:

  • Situs web resmi Whitespace sedang offline, jadi satu-satunya pilihan Anda adalah memeriksa konten yang diarsipkan Wayback Machine dengan penjelasan, tutorial, dan contoh-contoh bahasa pemrograman Whitespace yang sedang beraksi.
  • Anda dapat mencoba beberapa contoh menggunakan kompiler Whitelips IDE Online Whitespace, yang memuat “Halo Dunia” contoh secara default. Anda akan terkejut melihat berapa lama contohnya, karena di Whitespace, Anda harus mendefinisikan setiap karakter satu per satu menggunakan kode ASCII.

Kesimpulan

Sebagai bahasa pemrograman, Whitespace sama eksotisnya, bahkan dengan standar bahasa esoteris.

Sementara itu’Bukan bahasa pemrograman yang digunakan orang untuk sesuatu yang produktif, itu’Ini adalah latihan mental yang cerdas dan berfungsi sebagai bukti bahwa Anda dapat mengubah hampir semua hal menjadi kode, setidaknya secara teori.

Setelah Anda mencobanya dan mencari tahu cara kerjanya, Anda’lebih atau kurang dilakukan dengan Whitespace, karena Anda benar-benar bisa’t menggunakannya untuk hal yang serius. Yah, setidaknya tidak kecuali Anda punya banyak waktu untuk membunuh dan tidak ada yang lebih baik untuk dilakukan.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me