Deadfish adalah lelucon "bahasa pemrograman" dengan empat perintah. Karena halaman Esolang agak kontradiktif dan penerjemah pada halaman itu tidak semuanya bekerja persis sama, Anda harus menerapkan variasi berikut:
Spesifikasi
- Ada akumulator yang setidaknya 16 bit dalam ukuran, lebih banyak diperbolehkan tetapi lebih sedikit tidak. Angka negatif tidak perlu didukung. Akumulator adalah
0ketika program dimulai. - Ada dua set empat perintah berikut, dan program Anda harus mendukung keduanya pada saat yang sama.
Deadfish Standar │ Varian XKCD │ Artinya ────────────────────aha ────────────────────────── i │ x │ Akumulator kenaikan d │ d │ Akumulator penurunan s │ k │ Kotak (acc = acc * acc) o │ c │ Output akumulator, sebagai angka - Jika, setelah menjalankan perintah, akumulator adalah salah satu
-1atau256, akumulator harus diatur ulang ke nol. Perhatikan bahwa ini bukan bungkus biasa. Jika, katakanlah, akumulator adalah20, dansperintah dijalankan, akumulator harus400sesudahnya. Demikian pula, jika akumulator257dandperintah dijalankan, akumulator harus menjadi0. - Masukan apa pun yang bukan salah satu dari perintah ini harus diabaikan.
Program uji
xisksoharus keluar0xiskischarus keluar289
I / O
Program Anda harus menampilkan prompt: >>. Prompt harus di awal baris baru. Kemudian harus membaca baris input pengguna, dan menjalankan perintah yang diberikan dari kiri ke kanan. Saat mengeluarkan angka, angka harus dipisahkan. Yaitu, 12 34tidak apa-apa, 12,34tidak apa-apa,
12
34
tidak apa-apa, tetapi 1234tidak.
Program Anda harus terus melakukan ini dalam satu lingkaran, setidaknya sampai EOFtercapai.
Sesi contoh:
>> xiskso
0
>> xiskisc
289
>> ddddo ddddo
285
281
>> ddddo ddddo
277
273
>> dddddddo
266
>> dddddddddo
257
>> do
0
>> do
0
>> io
1
>>
#{STDIN.gets}akan bekerja tetapi memang tidak.