เมตาควินเป็นโปรแกรมที่ไม่ได้เป็นควิน แต่มีเอาต์พุตเมื่อรันเป็นโปรแกรมในภาษาเดียวกันจะเป็นควิน
เป้าหมายของความท้าทายนี้คือการเขียน metaquine นี่คือcode-golfดังนั้นรหัสที่สั้นที่สุดชนะด้วยคำตอบแรกสุดที่ใช้เป็น tiebreaker โปรดทราบว่ามีเพียงโปรแกรมเต็มรูปแบบที่ยอมรับได้เนื่องจากคำจำกัดความของควิน
กฏสำหรับ Quines
ยอมรับ Quines จริงเท่านั้น นั่นคือคุณต้องพิมพ์คำต่อคำทั้งหมดเพื่อ STDOUT โดยไม่ต้อง :
- อ่านซอร์สโค้ดของคุณโดยตรงหรือโดยอ้อม
- อาศัยสภาพแวดล้อม REPL ซึ่งเพียงประเมินและพิมพ์นิพจน์ทุกครั้งที่คุณป้อน
- อาศัยคุณสมบัติภาษาที่เพิ่งพิมพ์ออกมาในบางกรณี
- ใช้ข้อความแสดงข้อผิดพลาดหรือ STDERR เพื่อเขียนทั้งหมดหรือบางส่วนของควิน (คุณสามารถเขียนสิ่งต่าง ๆ ไปยัง STDERR หรือสร้างข้อผิดพลาด / เตือนไม่ใช่ข้อผิดพลาดได้ตราบใดที่ STDOUT เป็นควินินที่ถูกต้องและข้อความผิดพลาดไม่ได้เป็นส่วนหนึ่งของมัน)
- ซอร์สโค้ดประกอบด้วยตัวอักษรล้วนๆ (ไม่ว่าจะเป็นตัวอักษรสตริงตัวอักษรตัวเลข ฯลฯ ) และ / หรือ NOP
เอาท์พุทที่ไม่สามารถปราบปรามได้ (เช่นประกาศลิขสิทธิ์ข้อความเริ่มต้น / ปิดเครื่องหรือฟีดบรรทัดต่อท้าย) อาจถูกละเว้นในเอาต์พุตเพื่อประโยชน์ของ quine
ตัวอย่าง
ไม่สนใจกฎที่ห้ามโปรแกรมที่มีตัวอักษรเท่านั้นและมีการสร้างควินนิ่งในตัวนี่จะเป็น metaquine อย่างจริงจัง:
"Q"
โปรแกรมประกอบด้วยสตริงตัวอักษรเดียว"Q"
ซึ่งถูกพิมพ์โดยปริยายที่เอาต์พุต เมื่อเรียกใช้เอาต์พุต ( Q
) จะเป็น quine ( Q
เป็นฟังก์ชัน quine ในตัว)
T
คือคำตอบ Pyth ขนาด 1 ไบต์ที่ง่าย