ตีความ DOGO
DOGOเป็นภาษาการเขียนโปรแกรมที่รู้จักน้อย ในขณะที่ DOGO ดั้งเดิม (ภาษาตลกจากโพสต์ Usenet) ไม่เคยถูกนำมาใช้ แต่ภาษาที่คล้ายกันนั้นถูกสร้างขึ้น คำสั่งสำหรับภาษาคือ:
+===========+================================================================+
| Command | Description |
+===========+================================================================+
| SIT | If the value of the current memory cell is 0, jump to STAY. |
+-----------+----------------------------------------------------------------+
| STAY | If the value of the current memory cell is not 0, jump to SIT. |
+-----------+----------------------------------------------------------------+
| ROLL-OVER | Select the next operation from the operation list. |
+-----------+----------------------------------------------------------------+
| HEEL | Execute the currently selected operation. |
+-----------+----------------------------------------------------------------+
การดำเนินงานคือ:
+========+=======================================================+====+
| Number | Description | BF |
+========+=======================================================+====+
| 0 | Increment current memory cell. | + |
+--------+-------------------------------------------------------+----+
| 1 | Decrement current memory cell. | - |
+--------+-------------------------------------------------------+----+
| 2 | Move to next memory cell. | > |
+--------+-------------------------------------------------------+----+
| 3 | Move to previous memory cell. | < |
+--------+-------------------------------------------------------+----+
| 4 | Input a byte and store it in the current memory cell. | , |
+--------+-------------------------------------------------------+----+
| 5 | Output the current memory cell as ASCII. | . |
+--------+-------------------------------------------------------+----+
ตัวอย่าง
สวัสดีชาวโลก:
roll-over roll-over heel roll-over roll-over roll-over roll-over heel heel heel
heel heel heel heel heel heel sit roll-over roll-over roll-over heel roll-over
roll-over roll-over heel heel heel heel heel heel heel heel roll-over roll-over
heel roll-over roll-over roll-over roll-over roll-over heel roll-over roll-over
roll-over roll-over roll-over stay roll-over roll-over roll-over heel roll-over
roll-over heel roll-over roll-over roll-over heel roll-over roll-over roll-over
roll-over heel heel heel heel heel heel heel sit roll-over roll-over roll-over
heel roll-over roll-over roll-over heel heel heel heel roll-over roll-over heel
roll-over roll-over roll-over roll-over roll-over heel roll-over roll-over
roll-over roll-over roll-over stay roll-over roll-over roll-over heel roll-over
roll-over roll-over heel roll-over roll-over roll-over roll-over roll-over heel
roll-over heel heel heel heel heel heel heel roll-over roll-over roll-over
roll-over roll-over heel heel roll-over heel heel heel roll-over roll-over
roll-over roll-over roll-over heel roll-over roll-over roll-over heel heel heel
roll-over roll-over roll-over roll-over heel heel heel heel heel heel heel heel
sit roll-over roll-over roll-over heel roll-over roll-over roll-over heel heel
heel heel roll-over roll-over heel roll-over roll-over roll-over roll-over
roll-over heel roll-over roll-over roll-over roll-over roll-over stay roll-over
roll-over roll-over heel roll-over roll-over heel roll-over roll-over roll-over
heel heel heel roll-over roll-over roll-over roll-over heel heel heel heel heel
heel heel heel heel heel sit roll-over roll-over roll-over heel roll-over
roll-over roll-over heel heel heel heel heel heel heel heel heel roll-over
roll-over heel roll-over roll-over roll-over roll-over roll-over heel roll-over
roll-over roll-over roll-over roll-over stay roll-over roll-over roll-over heel
roll-over roll-over roll-over roll-over heel heel heel roll-over roll-over
roll-over roll-over heel roll-over roll-over roll-over roll-over heel heel heel
heel roll-over roll-over heel roll-over heel heel heel roll-over roll-over
roll-over roll-over roll-over heel roll-over roll-over heel heel heel heel heel
heel roll-over roll-over roll-over roll-over heel roll-over roll-over heel heel
heel heel heel heel heel heel roll-over roll-over roll-over roll-over heel
roll-over roll-over roll-over heel heel roll-over roll-over roll-over roll-over
heel roll-over roll-over roll-over roll-over roll-over heel
กฎระเบียบ
- การส่งแต่ละครั้งควรเป็นโปรแกรมหรือฟังก์ชั่นเต็มรูปแบบ หากเป็นฟังก์ชั่นจะต้องสามารถเรียกใช้งานได้โดยต้องการเพียงแค่เพิ่มการเรียกใช้ฟังก์ชันที่ด้านล่างของโปรแกรม ต้องรวมสิ่งอื่นใด (เช่นส่วนหัวใน C)
- หากเป็นไปได้โปรดระบุลิงก์ไปยังเว็บไซต์ออนไลน์ที่สามารถทดสอบโค้ดของคุณได้
- โปรแกรมของคุณไม่สามารถเขียนอะไรถึง
STDERR
(หรือสิ่งที่คล้ายกัน) - คุณสามารถรับข้อมูลจาก
STDIN
(หรือภาษาที่ใกล้เคียงที่สุดในภาษาของคุณ) หรือเป็นอาร์กิวเมนต์ - ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
เกณฑ์การให้คะแนน
โปรแกรมมีคะแนนตามไบต์ ชุดอักขระเริ่มต้นคือ UTF-8 หากคุณใช้ชุดอักขระอื่นโปรดระบุ
นั่นคือสิ่งนี้ รหัสกอล์ฟและจำนวนไบต์ต่ำสุดจะถือเป็นผู้ชนะ!
การส่ง
เพื่อให้แน่ใจว่าคำตอบของคุณปรากฏขึ้นโปรดเริ่มคำตอบด้วยหัวข้อโดยใช้เทมเพลต Markdown ต่อไปนี้:
# Language Name, N bytes
ที่N
มีขนาดของส่งของคุณ หากคุณปรับปรุงคะแนนของคุณคุณสามารถเก็บคะแนนเก่าไว้ในบรรทัดแรกโดยการตีพวกเขาผ่าน ตัวอย่างเช่น
# Ruby, <s>104</s> <s>101</s> 96 bytes
หากคุณต้องการรวมหลายตัวเลขไว้ในส่วนหัวของคุณ (เช่นเนื่องจากคะแนนของคุณคือผลรวมของไฟล์สองไฟล์หรือคุณต้องการแสดงรายการบทลงโทษการตั้งค่าสถานะของล่ามแยกต่างหาก) ตรวจสอบให้แน่ใจว่าคะแนนจริงเป็นตัวเลขสุดท้ายในส่วนหัว:
# Perl, 43 + 2 (-p flag) = 45 bytes
นอกจากนี้คุณยังสามารถตั้งชื่อภาษาให้เป็นลิงค์ซึ่งจะปรากฏในตัวอย่างกระดานแต้มนำ:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes
ลีดเดอร์บอร์ด
นี่คือ Stack Snippet เพื่อสร้างทั้งกระดานผู้นำปกติและภาพรวมของผู้ชนะตามภาษา
ปรับปรุง:
ขออภัยที่ไม่ชัดเจนsit
และstay
คำสั่งดีมาก พวกเขาเป็นอย่างเช่น @ user6245072 กล่าวว่าชอบ[
และ]
ใน BF
อัปเดต 2:
เพื่อชี้แจงคำถามของ @ KennyLau:
0
การดำเนินการเริ่มต้นคือ- หน่วยความจำประกอบด้วยเซลล์ 8 บิต
- เซลล์ห่อบนโอเวอร์โฟลว์ / อันเดอร์โฟล์
- จำเป็นต้องป้อนข้อมูลสำหรับการทำงาน 4
1
บอกว่า "เพิ่มเซลล์ถัดไป` แต่รหัส BF ที่สอดคล้องกันคือ "เซลล์ปัจจุบันลดลง" ซึ่งหนึ่งในพฤติกรรมที่ถูกต้องคืออะไร
sit lie-down roll-over play-dead heel