> <> , 56 ไบต์
^
.
+
8
f
0
o
a
o
~
:
?
~
:
?
:
-
*
4
8
:
^
^
}
*
3
d
'
ลองออนไลน์! หรือตรวจสอบการกลายพันธุ์ทั้งหมด
โปรแกรมต้นฉบับทำงานอย่างไร (ล้าสมัย)
ล่ามเริ่มต้นในเซลล์(0, 0) ^กำหนดทิศทางที่จะขึ้นไปเพื่อให้การเรียนการสอนชี้ (IP) ล้อมรอบเซลล์(0, 20)
'เปิดใช้งานโหมดสตริง: จนกว่า'จะพบสิ่งต่อไปตัวละครทั้งหมดภายใต้ IP จะถูกผลักลงบนสแต็ก เช่นเดียวกับที่'พบอีกครั้งหลังจากที่ห่อรอบ ๆ ดังนั้นเราจึงผลักดัน
d3*}^^:84*=?~oao0f.^
ทรัพย์สินทางปัญญาที่(0, 19)ยังคงขึ้นไป การดำเนินการd3*}กด13 = 0xdจากนั้น3คูณทั้งสองค่า ( 39 / คำพูดเดี่ยว ) จากนั้นหมุนสแต็กไปทางขวา ใบนี้ออกจากสแต็กดังนี้
'd3*}^^:84*=?~oao0f.^
คำแนะนำสองข้อถัดไป ( ^) ไม่ได้ทำในจุดนี้
:84*=ซ้ำด้านบนของสแต็คผลัก8และ4คูณพวกเขา ( 32 / พื้นที่ ) จากนั้นทดสอบตัวละครซ้ำกันเพื่อความเท่าเทียมกันกับพื้นที่ สำหรับโปรแกรมที่ไม่มีการเปลี่ยนแปลงนี่จะเป็น0เสมอ
?ข้ามคำสั่งถัดไปหากส่วนบนสุดของสแต็กเป็นเท็จ สำหรับโปรแกรมดั้งเดิมมันจะเป็นเช่น~นั้นเสมอดังนั้นจึงถูกข้ามไป
oaoปรากฏและพิมพ์ด้านบนของสแต็ค, ดัน10 / เลื่อนบรรทัดแล้วปรากฏและพิมพ์เลื่อนบรรทัด
ในที่สุดก็0f.กระโดดไปที่เซลล์(0, 15) (ล่างสุด^) เริ่มต้นด้วยตัวละครต่อไปในกอง
เมื่อสแต็กว่างเปล่ารหัสต้นฉบับทั้งหมดจะถูกพิมพ์ :จะล้มเหลวและโปรแกรมออก
โปรแกรมที่กลายพันธุ์ทำงานอย่างไร (ล้าสมัย)
การทำสำเนาอักขระที่ไม่ใช่บรรทัดการป้อนซ้ำจะเป็นการขยายโปรแกรมในแนวนอนเท่านั้น เนื่องจากโปรแกรมถูกดำเนินการในแนวตั้งคำแนะนำพิเศษเหล่านี้จะไม่ถูกดำเนินการ
โรเนียวเลื่อนบรรทัดใด ๆ ก่อนที่ bottomost ^จะเปลี่ยนเซลล์(0, 14)และ(0, 15)เพื่อ(0, 15)และ(0, 16) 0f.ตอนนี้จะข้ามไปที่เซลล์ก่อนหน้าสุด^ซึ่งก็คือ a ^ดังนั้นโปรแกรมจะไม่ได้รับผลกระทบจากการเปลี่ยนแปลง
ในที่สุดตัวอักษร linefeed ใด ๆ ที่ซ้ำกันก็จะเปลี่ยนสตริง เส้นสั้น ๆ ที่เต็มไปด้วยช่องว่างดังนั้น32 / ช่องว่างจะถูกแทรกในตำแหน่งของ linefeed 84*=จะผลัก1สำหรับพื้นที่ดังนั้น?อย่าข้ามคำสั่งถัดไป ในกรณีนี้~จะปรากฏขึ้นและละทิ้งพื้นที่ดังนั้นต่อไปนี้oจะพิมพ์ตัวอักษรเหนือช่องว่างแทน
0และ00ใน CJam0ทั้งการส่งออก