Куайн (програмиране)

Материал от Seo Wiki - Оптимизация и програмиране на търсачки

Quine, quine (англ. quine ) - компютърна програма (специален случай на метапрограмиране), която извежда точно копие на оригиналния си текст. Програмистите понякога, за забавление, разработват възможно най-кратките заявки на различни езици за програмиране.

Трябва да се отбележи, че програмите, които използват външни данни, не се считат за quines; т.е. четенето на програмния текст от файла, въвеждането му от клавиатурата и т.н. се изключва. Освен това „програма“, която изобщо не съдържа код (дегенериран случай), не се счита за куин. В книгата "Есета за програмисти" е формулирано по-строго условие: програмата не трябва да използва трикове, които позволяват достъп до нейния изходен код, съхраняван в паметта на товарача или интерпретатора. Следователно, quine на BASIC 10 LIST не е съвсем честен.

Терминът получи името си от американския логик и философ Уилард Ван Орман Куайн (англ. Willard van orman quine ) (1908-2000), който се занимава с задълбочено изследване на косвеното самоспоменаване (англ. непряка самореференция ).

Съдържание

Quine съществува във всеки език за програмиране, който има способността да извежда произволен изчисляван ред текст. Идеята на Куайн е описана за първи път от Пол Братли. Братли, Пол ) и Жан Мило (англ.). Мило, Жан ) в „Компютърни развлечения; Автоматично възпроизвеждащи се автомати, Софтуер - практика и опит, брой 2 (1972), стр. 397-400. Братли се заинтересува от самовъзпроизвеждащи се програми, след като видя първата такава програма, написана на езика за програмиране Atlas Autocode в Единбург през 60-те години, от професор и изследовател Хамиш Дево. Хамиш деуар ).