Quine (computer program): Difference between revisions
imported>Christopher J. Reiss (to be continued ...) |
imported>Todd Coles No edit summary |
||
Line 1: | Line 1: | ||
{{subpages}} | |||
A '''quine''' is a term used in computer science to describe a program which produces its own source code. Writing a Quine in various computer languages has been a popular challenge to computer programs; this problem has been posed to readers in various magazines such as Creative Computing and Byte. | A '''quine''' is a term used in computer science to describe a program which produces its own source code. Writing a Quine in various computer languages has been a popular challenge to computer programs; this problem has been posed to readers in various magazines such as Creative Computing and Byte. | ||
Revision as of 20:57, 2 March 2008
A quine is a term used in computer science to describe a program which produces its own source code. Writing a Quine in various computer languages has been a popular challenge to computer programs; this problem has been posed to readers in various magazines such as Creative Computing and Byte.
The challenge is to write a program which prints out exactly its own source code, without 'cheating', that is, without accessing any memory location which was not populated by the program's execution (so this rules out printing the file from disk, or scanning RAM for a copy of the code in an editor.)
A Quine is no mere puzzle; using a Quine it is possible to produce rather direct and simple proofs of both the Church-Turing Thesis and Godel's Incompleteness Theorem, both of which are among the highest achievements of human thought in the twentieth century.