自己複製
計算機科学における自己複製型プログラムとは、実行すると自分自身のコードを出力するプログラムである。これをクワインと呼ぶ。以下にPythonでの例を示す。
a='a=%s;print a%%`a`';print a%`a`
もっと瑣末な手法としては、入力されたデータ列をコピーするプログラムが考えられ、そのプログラムにプログラム自身をデータとして入力する。この場合、プログラムは実行コードとして扱われると同時に操作対象のデータとしても扱われる。生命体も含め、このような手法は自己複製システムでは典型的であり、プログラム自体に自身の記述を含める必要がないという点で単純である。
多くのプログラミング言語において、空のプログラムも正しいプログラムであり、そのようなプログラムはエラーも起こさないし、何も出力しない。つまり、その場合の出力はソースコードと同じであるため、このような空のプログラムが最も単純な自己複製であるとも言える。