Самоизписваща се програма: Разлика между версии

от Уикипедия, свободната енциклопедия
Изтрито е съдържание Добавено е съдържание
м Робот Добавяне: simple:Quine
Broadbot (беседа | приноси)
м Робот Добавяне: da:Quine (programmering)
Ред 31: Ред 31:


[[be-x-old:Куін]]
[[be-x-old:Куін]]
[[da:Quine (programmering)]]
[[de:Quine (Computerprogramm)]]
[[de:Quine (Computerprogramm)]]
[[en:Quine (computing)]]
[[en:Quine (computing)]]

Версия от 17:20, 23 септември 2010

Тази статия описва тип компютърни програми. Може би Вие търсите информация за философа Willard Van Orman Quine.

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

Quine-ите са именувани на философа W. V. Quine, който се е занимавал с непрякото самоизразяване: той изследва парадоксални изречения от вида „влече лъжа когато се приложи към себе си.“

Кратък quine на C

main(){char*a="main(){char*a=%c%s%c;printf(a,34,a,34);}";printf(a,34,a,34);}

Кратък quine на Pascal

const a:string='const a:string=;begin insert(#39+a+#39,a,16);write(a) end.';begin insert(#39+a+#39,a,16);write(a) end.

Кратък quine на Scheme LISP

((lambda (x)
          (list x (list (quote quote) x)))
      (quote
          (lambda (x)
              (list x (list (quote quote) x)))))

Външни препратки