OK、この用語に出会ったことがない人にとって、クワインは「自己複製」コンピュータプログラムです。具体的には、実行時に、唯一の出力として独自のソースコードのコピーを生成するものです。
もちろん、クインは多くのプログラミング言語で開発できます(すべてではありません)。しかし、一部の言語は明らかに他の言語よりもクワインの生産に適しています(やや主観的な響きの「より適した」を明確に理解するには、WikiページのHaskellの例とCの例を見てください-そして私は以下に私のより客観的な定義を提供します) 。
私が持っている質問は、プログラミング言語の観点から、どの言語機能(理論設計のものまたは構文糖衣構文のいずれか)が言語をクワインを書くのにより適した/役立つものにするかどうかです。
私の「より適切な」の定義は、「クワインは書きやすい」と「より短い/より読みやすい/難読化されていない」です。ただし、少なくともある程度客観的な基準を追加することは大歓迎です。
この質問は、「print_a_quine」プリミティブを含むように設計された言語のように、縮退したケースを明示的に除外していることに注意してください。