ตอนนี้เราทุกคนรู้ว่าภาษาส่วนใหญ่มีวิธีง่าย ๆ ในการ "แก้ไขตัวเอง" รหัส อย่างไรก็ตามจะเกิดอะไรขึ้นถ้าคุณต้องแก้ไขรหัสและแก้ไขบางส่วน ... บนดิสก์
เป้าหมายของคุณคือการสร้างรหัสที่พิมพ์ตัวเลขจากนั้นแก้ไขไฟล์ของตัวเองเพื่อแทนที่ตัวเลขด้วยหมายเลขถัดไปในลำดับฟีโบนักชีดังนี้:
$ ./program
1
$ ./program
1
$ ./program
2
$ ./program
3
$ ./program
5
[etc...]
กฎระเบียบ
- คุณไม่สามารถจัดเก็บหมายเลข "นอก" ของรหัสได้ ไม่มีความคิดเห็นไม่บอกสคริปต์ให้ออกไม่มี EOF ฯลฯ
- หากรหัสของคุณทำงานกับชื่อไฟล์ใด ๆ ให้ลบ 2 จากจำนวนไบต์และเขียน
$BYTESNOW ($ORIGINALBYTES - 2)
ชื่อของคุณ (ชื่อไฟล์จะถือว่าอยู่ในช่วงของพา ธ ไฟล์ตัวอักษรและตัวเลขใด ๆ ) - รหัสของคุณจะต้องเขียนผลลัพธ์ไปยังไฟล์ด้วยตัวมันเองโดยไม่ต้องมีการช่วยเหลือจากภายนอก
- รหัสของคุณสามารถเริ่มจากหนึ่งหรือศูนย์ มันไม่สำคัญ
perl6 program
) หรือต้องรวมสาย Shebang เพื่อให้สามารถเรียกได้ว่าเป็น./program
?
program
และเราสามารถสันนิษฐานได้ว่ามันอยู่ในไดเรกทอรีการทำงานปัจจุบันหรือไม่?
"a"
arg[0]
ดูเหมือนจะไม่คุ้มค่า