3
\$\begingroup\$

This is a crazy (crazy as in crazy weird) issue. If a challenge defines a quine as

A quine is a non-empty computer program which takes no input and produces a copy of its own source code as its only output.

And the meta says:

A quine is payload-capable if it can be extended, in some systematic manner, to include a "payload" of additional code capable of performing arbitrary computation, in addition to printing its source code. A payload-capable quine, in its base form, must include all the code necessary to carry and execute a payload, even if no actual payload is present.

And

A quine is a non-empty computer program which takes no input and produces a copy of its own source code as its only output.

Also

It must be possible to identify a section of the program which encodes a different part of the program. ("Different" meaning that the two parts appear in different positions.) Furthermore, a quine must not access its own source, directly or indirectly.

They are all from different people. The first is a user the second Kevin Workman and the third is Martin. Who is right? And if a challenge defines a quine as different wouldn't that override the meta?

The issue arose from my answer to "Golf you a quine for great good" that follows. Would it be valid?

HQ9+ 12 bytes (non cheating)

Hello World!

HQ9+ is a bit cheaty with the use of Q to quine. But if you write a program in it with Hello World! it detects the H and prints Hello World! and thus quines.

Relevant chat transcript starts here

\$\endgroup\$
5
  • \$\begingroup\$ If you have a question for clarification on this, you should post in chat or add a comment to the duplicate question you referenced. \$\endgroup\$
    – mbomb007
    Mar 14, 2017 at 22:40
  • \$\begingroup\$ @mbomb007 uhh in chat it was very split \$\endgroup\$
    – user63187
    Mar 15, 2017 at 0:09
  • \$\begingroup\$ @DownChristopher Well chat is only whoever is on at the time. Use the meta consensus, shown with votes. \$\endgroup\$
    – mbomb007
    Mar 15, 2017 at 13:45
  • \$\begingroup\$ Isn't it irrelevant? HQ9+ is not a programming language as defined in meta, so you can't use it for answers anyway. \$\endgroup\$ Mar 15, 2017 at 17:31
  • \$\begingroup\$ The meta discussion defines "proper quine". Challenges can accept improper quines, too. \$\endgroup\$ Jun 14, 2017 at 4:51

1 Answer 1

3
\$\begingroup\$

How to resolve rules:

  1. All rules apply, including meta and rules posted on the question.
  2. If there are two rules that conflict: The posted question takes priority, followed by the most upvoted meta answer.

In your case:

The definition of a quine in the question "A quine is a non-empty computer program which takes no input and produces a copy of its own source code as its only output" does not conflict with the meta answers.

However, on the meta, we have two alternatives that are competing:

  1. "It must be possible to identify a section of the program which encodes a different part of the program"
  2. "Solutions must be payload-capable, and must not read their source code or use string eval"

The first one is the most upvoted one, and therefore takes priority.

\$\endgroup\$