Temui Whitespace: Bahasa Pengaturcaraan Paling Tidak Berkesan di Dunia?

Pendedahan: Sokongan anda membantu mengekalkan laman web ini! Kami memperoleh bayaran rujukan untuk beberapa perkhidmatan yang kami cadangkan di halaman ini.


Whitespace adalah bahasa pengaturcaraan esoterik yang dikembangkan oleh Edwin Brady dan Chris Morris di University of Durham, England. Di Ruang Putih, hanya ruang, tab dan umpan baris yang mempunyai makna, sementara semua watak bukan ruang kosong yang lain diabaikan oleh jurubahasa.

Sekiranya ini terdengar pelik dan tidak praktikal, ya! Sebenarnya, itu’s keseluruhan titik Whitespace.

Sejarah Ringkas

Brady dan Morris mendapat idea untuk membuat Whitespace semasa perbualan di sebuah pub, pada akhir tahun 2002. Oleh kerana kebanyakan bahasa pengaturcaraan mengabaikan watak ruang kosong, para pembangun menganggap ini tidak adil bagi anggota kumpulan watak ini, dan memutuskan untuk membuat Whitespace. Kita mungkin harus memperhatikan bahawa kebanyakan bahasa pengaturcaraan tidak dirancang di pub, jadi ini hanya fakta lain yang menjadikan Whitespace unik.

Whitespace dilancarkan pada 1 April 2003, jadi pada mulanya ia kelihatan seperti April Fool yang terlalu rumit’lawak. Walau bagaimanapun, tarikh pelepasan 1 April adalah kebetulan. Sebenarnya, tarikh pelepasan ternyata sangat berguna, kerana menarik banyak perhatian pada Slashdot ketika diumumkan secara rasmi.

ciri-ciri

Ruang kosong adalah bahasa pengaturcaraan berasaskan timbunan penting yang menyokong bilangan bulat. Sokongan untuk nombor titik terapung tidak dilaksanakan. Dalam sintaksnya, hanya watak ruang kosong – ruang, tab dan suapan baris yang mempunyai makna, semua watak lain diabaikan. Akibatnya, program ruang kosong dapat dimasukkan dalam karakter ruang kosong dari program yang ditulis dalam bahasa lain, atau dalam file teks biasa.

Secara teori, pengaturcara dapat menulis novel di sekitar kod Whitespace mereka – kodnya masih berfungsi, namun kebanyakan orang hanya akan melihat novel itu, bukan kod Whitespace yang mendasari.

Sebagai bahasa pengaturcaraan esoterik (esolang), Whitespace dibuat untuk menguji had reka bentuk bahasa pengaturcaraan komputer, dan tidak dimaksudkan untuk digunakan untuk pengaturcaraan arus perdana. Ini hanyalah bukti konsep, dengan aplikasi praktikal yang sangat terhad, sejak itu’hampir tidak digunakan di dunia nyata.

Namun, sebagai demonstrator teknologi yang dirancang untuk membuktikan bahawa anda sebenarnya boleh menggunakan bahasa pengaturcaraan yang berfungsi berdasarkan ruang kosong dan bukannya watak, ia pasti berfungsi. Malangnya, Whitespace tidak’t direka untuk apa-apa yang lebih daripada itu. Itu adalah demo teknologi yang rumit, bukan bahasa pengaturcaraan yang dirancang untuk aplikasi praktikal.

Sintaks

Perintah di Ruang Kosong, dan juga keseluruhan kod, terdiri daripada urutan spasi, berhenti tab dan umpan baris. Contohnya, tab-space-space-space melakukan penambahan aritmetik dari dua elemen teratas pada timbunan. Kod ditulis dalam bentuk Parameter Pengubah Instruksi (IMP) diikuti dengan operasi. Whitespace mempunyai IMP berikut: “ruang” – manipulasi timbunan, “ruang tab” – aritmetik, “tab-tab” – akses timbunan, “makan barisan” – kawalan aliran, “tab-linefeed” – input / output.

Data ditunjukkan dalam bentuk binari, menggunakan spasi untuk 0 dan tab untuk 1, diikuti dengan umpan baris, misalnya ruang-ruang-ruang-tab-tab-ruang-baris umpan adalah nombor binari 000110, yang merupakan 6 dalam perpuluhan.

Contoh berikut adalah dari 1 hingga 5 dan mencetak nombor dari 1 hingga 5, di mana “S” mewakili ruang, “T” – tab, dan “L” – lineline:

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

Keluaran dari kod di atas adalah:

1 2 3 4 5

Bagaimana dengan menulis Hello World di Whitespace? Nah, itu memerlukan anda membuat kod hampir setiap huruf dan anda’d berakhir dengan sekitar 950 contoh ruang, tab dan penyusunan baris. Ia’pastinya bukan contoh yang dapat kita sertakan dalam pengenalan kita ke Whitespace, tetapi sekiranya anda’berminat, dan anda mempunyai terlalu banyak masa lapang, anda boleh melihatnya di sini.

Sumber ruang kosong

Tidak ada gunanya belajar Whitespace, tetapi jika anda menyukai konsepnya dan anda ingin mengetahui lebih lanjut tentangnya, atau mencuba beberapa contoh, periksa sumber berikut:

  • Laman web Whitespace rasmi di luar talian, jadi satu-satunya pilihan anda adalah menyemak kandungan yang diarkibkan Mesin Wayback dengan penjelasan, tutorial dan contoh bahasa pengaturcaraan Whitespace dalam tindakan.
  • Anda boleh mencuba beberapa contoh menggunakan penyusun Whitelips IDE Online Whitespace, yang memuat “Hai dunia” contoh secara lalai. Anda akan terkejut berapa lama contohnya, kerana di Ruang Kosong, anda harus menentukan setiap watak satu persatu menggunakan kod ASCII.

Kesimpulannya

Sebagai bahasa pengaturcaraan, Whitespace sama eksotiknya, walaupun dengan standard bahasa esoterik.

Sementara itu’Bukan bahasa pengaturcaraan yang sebenarnya digunakan orang untuk apa sahaja yang produktif’adalah latihan mental yang cerdas dan ia membuktikan bahawa anda boleh mengubah hampir semua perkara menjadi kod, sekurang-kurangnya dari segi teori.

Sebaik sahaja anda mencubanya dan mengetahui cara kerjanya, anda’lebih kurang dilakukan dengan Whitespace, kerana anda benar-benar boleh’t menggunakannya untuk perkara serius. Baiklah, sekurang-kurangnya tidak kecuali anda mempunyai banyak masa untuk membunuh dan tidak ada yang lebih baik untuk dilakukan.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map