![]() | This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||
|
|
|
The link to "Reflections on Trusting Trust" (section "Further reading") is
http://www.acm.org/classics/sep95/
which redirects to
http://portal.acm.org/toc.cfm?id=SERIES11430&type=series&coll=ACM&dl=ACM
which is a site that doesn't even contain the words "reflections" or "trust". Can anyone repair that link, or should we remove this spam entirely?
Vog ( talk) 18:51, 20 January 2008 (UTC)
Because of Quine's paradox, Quines should not read source of those. Programs that use toSource, (implicitly or explicitly) toString, innerHTML, innerText ,etc. should not be consider to Quine.
I think the self-producing programs are known in recursion theory decades before the article cited. Also the article does not give references who has coined the name Quine, in recursion theory/logic literature it is simply called a self-reproducing program, I have not seen any book calling it a Quine program, so I think it is not a common name unless someone provides sources justifying the name, IMHO, the page should be moved to self-reproducing programs.
It seems that the only source for this name is the book GEB ( http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.164.5131&rep=rep1&type=pdf) and there does not seem any adoption of this name in literature. My search on Google scholar for "Quine Program" -philosophy returns only 4 results, one from 2007 and the rest from 2009/2010. I don't think it is good practice to change the name of a well-established concept in literature to a name coined by a popular science book which has not been adopted by experts in the area even after 31 years. 128.100.3.43 ( talk) 16:00, 1 October 2010 (UTC)
why is there no mention of multiquines, that is programs that are quines in different programming language using the same sourcecode? —Preceding unsigned comment added by 213.61.9.74 ( talk) 11:24, 24 March 2011 (UTC)
What about a program x which outputs another program y which outputs program x again, but where x and y are written in the same language? Isn't that also a multiquine, or at least an object of interest? Do the languages absolutely have to be different? 188.169.229.30 ( talk) 17:23, 16 February 2013 (UTC)
The idea of a multiquine needs to be cleared up. A multiquine is not a quine-relay, or Ouroboros pogram. Have a look at David Madore's post on quines: http://www.madore.org/~david/computers/quine.html. Summarized: "A multiquine is a set of r different programs (in r different languages — without this condition we could take them all equal to a single quine), each of which is able to print any of the r programs (including itself) according to the command line argument it is passed. (Note that cheating is not allowed: the command line arguments must not be too long — passing the full text of a program is considered cheating)." — Preceding unsigned comment added by 146.232.77.178 ( talk) 09:32, 15 August 2013 (UTC)
At the moment, the article contains the phrase
I guess I'm missing something: if he had already become interested in them in the 1960s, how can it be that the idea only first appeared in 1972?! Perhaps the intention was that that was the first time the idea was mentioned in an article? I'm not fixing it myself, as I don't really know much about it and don't know if what I wrote is correct. 188.169.229.30 ( talk) 17:21, 16 February 2013 (UTC)
The article states that the name "quine" was coined by Douglas Hofstadter in his 1979 book GEB. In the context in which this is presented, this gives the impression that it is claimed here that Hofstadter coined the name "quine" for self-reproducing programs. However, in GEB Hofstadter only introduced the term "quine" as a verb (as in "to quine a phrase"), and only in the meaning of prepending a quoted copy of a phrase to that phrase. For example, if you quine FOOBAZ you get "FOOBAZ" FOOBAZ. Though related to self-reproduction, this is nevertheless really something else. -- Lambiam 19:16, 14 February 2016 (UTC)
Hello fellow Wikipedians,
I have just modified 2 external links on Quine (computing). Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{
Sourcecheck}}
).
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 5 June 2024).
Cheers.— InternetArchiveBot ( Report bug) 15:22, 21 July 2016 (UTC)
Here is a PostScript Quine from Stan Switzer at https://donhopkins.com/home/archive/NeWS/news-tape/fun/quine/quine
{{[ exch /dup load /exec load ] cvx} dup exec}
That is an executable array (i.e. a PostScript a function), that when executed, reconstructs a duplicate of itself on the stack, be re-using another executable array as both data and code ("dup exec" passes the function as data to the function as code, kind of like the y-combinator). Xardox ( talk) 20:24, 1 September 2019 (UTC)
The article says "In some languages, particularly scripting languages but also C, an empty source file is a fixed point of the language, being a valid program that produces no output." What? I don't think an empty program is legal in C. I think it needs a main function. Is there some source that says an empty program is valid in C? Bugefun ( talk) 05:39, 20 January 2020 (UTC)
The example of using blockquotes for java is wrong:
public class Quine {
public static void main(String[] args) {
String textBlockQuotes = new String(new char[]{'"', '"', '"'});
char newLine = 10;
String source = """
public class Quine {
public static void main(String[] args) {
String textBlockQuotes = new String(new char[]{'"', '"', '"'});
char newLine = 10;
String source = %s;
System.out.println(source.formatted(textBlockQuotes + newLine + source + textBlockQuotes));
}
}
""";
System.out.println(source.formatted(textBlockQuotes + newLine + source + textBlockQuotes));
}
}
Its missing the double print
This is not a serious suggestion for modifying the article; just a piece of computer geekery for folks who like to hang around in talk pages. It is possible to construct an 'error quine' for a given compiler (or interpreter) such that a program when submitted to the compiler causes the compiler to print out the source code of the program as an error message. Dezaxa ( talk) 01:20, 5 October 2021 (UTC)
![]() | This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||
|
|
|
The link to "Reflections on Trusting Trust" (section "Further reading") is
http://www.acm.org/classics/sep95/
which redirects to
http://portal.acm.org/toc.cfm?id=SERIES11430&type=series&coll=ACM&dl=ACM
which is a site that doesn't even contain the words "reflections" or "trust". Can anyone repair that link, or should we remove this spam entirely?
Vog ( talk) 18:51, 20 January 2008 (UTC)
Because of Quine's paradox, Quines should not read source of those. Programs that use toSource, (implicitly or explicitly) toString, innerHTML, innerText ,etc. should not be consider to Quine.
I think the self-producing programs are known in recursion theory decades before the article cited. Also the article does not give references who has coined the name Quine, in recursion theory/logic literature it is simply called a self-reproducing program, I have not seen any book calling it a Quine program, so I think it is not a common name unless someone provides sources justifying the name, IMHO, the page should be moved to self-reproducing programs.
It seems that the only source for this name is the book GEB ( http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.164.5131&rep=rep1&type=pdf) and there does not seem any adoption of this name in literature. My search on Google scholar for "Quine Program" -philosophy returns only 4 results, one from 2007 and the rest from 2009/2010. I don't think it is good practice to change the name of a well-established concept in literature to a name coined by a popular science book which has not been adopted by experts in the area even after 31 years. 128.100.3.43 ( talk) 16:00, 1 October 2010 (UTC)
why is there no mention of multiquines, that is programs that are quines in different programming language using the same sourcecode? —Preceding unsigned comment added by 213.61.9.74 ( talk) 11:24, 24 March 2011 (UTC)
What about a program x which outputs another program y which outputs program x again, but where x and y are written in the same language? Isn't that also a multiquine, or at least an object of interest? Do the languages absolutely have to be different? 188.169.229.30 ( talk) 17:23, 16 February 2013 (UTC)
The idea of a multiquine needs to be cleared up. A multiquine is not a quine-relay, or Ouroboros pogram. Have a look at David Madore's post on quines: http://www.madore.org/~david/computers/quine.html. Summarized: "A multiquine is a set of r different programs (in r different languages — without this condition we could take them all equal to a single quine), each of which is able to print any of the r programs (including itself) according to the command line argument it is passed. (Note that cheating is not allowed: the command line arguments must not be too long — passing the full text of a program is considered cheating)." — Preceding unsigned comment added by 146.232.77.178 ( talk) 09:32, 15 August 2013 (UTC)
At the moment, the article contains the phrase
I guess I'm missing something: if he had already become interested in them in the 1960s, how can it be that the idea only first appeared in 1972?! Perhaps the intention was that that was the first time the idea was mentioned in an article? I'm not fixing it myself, as I don't really know much about it and don't know if what I wrote is correct. 188.169.229.30 ( talk) 17:21, 16 February 2013 (UTC)
The article states that the name "quine" was coined by Douglas Hofstadter in his 1979 book GEB. In the context in which this is presented, this gives the impression that it is claimed here that Hofstadter coined the name "quine" for self-reproducing programs. However, in GEB Hofstadter only introduced the term "quine" as a verb (as in "to quine a phrase"), and only in the meaning of prepending a quoted copy of a phrase to that phrase. For example, if you quine FOOBAZ you get "FOOBAZ" FOOBAZ. Though related to self-reproduction, this is nevertheless really something else. -- Lambiam 19:16, 14 February 2016 (UTC)
Hello fellow Wikipedians,
I have just modified 2 external links on Quine (computing). Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{
Sourcecheck}}
).
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 5 June 2024).
Cheers.— InternetArchiveBot ( Report bug) 15:22, 21 July 2016 (UTC)
Here is a PostScript Quine from Stan Switzer at https://donhopkins.com/home/archive/NeWS/news-tape/fun/quine/quine
{{[ exch /dup load /exec load ] cvx} dup exec}
That is an executable array (i.e. a PostScript a function), that when executed, reconstructs a duplicate of itself on the stack, be re-using another executable array as both data and code ("dup exec" passes the function as data to the function as code, kind of like the y-combinator). Xardox ( talk) 20:24, 1 September 2019 (UTC)
The article says "In some languages, particularly scripting languages but also C, an empty source file is a fixed point of the language, being a valid program that produces no output." What? I don't think an empty program is legal in C. I think it needs a main function. Is there some source that says an empty program is valid in C? Bugefun ( talk) 05:39, 20 January 2020 (UTC)
The example of using blockquotes for java is wrong:
public class Quine {
public static void main(String[] args) {
String textBlockQuotes = new String(new char[]{'"', '"', '"'});
char newLine = 10;
String source = """
public class Quine {
public static void main(String[] args) {
String textBlockQuotes = new String(new char[]{'"', '"', '"'});
char newLine = 10;
String source = %s;
System.out.println(source.formatted(textBlockQuotes + newLine + source + textBlockQuotes));
}
}
""";
System.out.println(source.formatted(textBlockQuotes + newLine + source + textBlockQuotes));
}
}
Its missing the double print
This is not a serious suggestion for modifying the article; just a piece of computer geekery for folks who like to hang around in talk pages. It is possible to construct an 'error quine' for a given compiler (or interpreter) such that a program when submitted to the compiler causes the compiler to print out the source code of the program as an error message. Dezaxa ( talk) 01:20, 5 October 2021 (UTC)