Quining имеет долгую историю - если вы еще не слышали о ней, щелкните по метке и прочитайте немного о ней.
Твое задание
Выведите бесконечную серию 1
s (без других пробелов [переводы строки, пробелы и т. Д.)). UNTIL SIGINT (обычно CTRL-C) вызывается. Когда он вызывается, выведите исходный код программы.
правила
- Это должен быть действительный квин:
- Нет источника чтения с диска.
- См. Все другие стандартные лазейки, относящиеся к куинам.
- Вы можете использовать любой язык.
- Поскольку это кодовый гольф, выигрывает самый короткий ответ!
1
Ответы:
Python 3, 76 байт
Обратите внимание, что в число байтов входит завершающий символ новой строки. Это также используется
-print
для ошибки после квинирования.источник
Pyth, 25 байт
Модификация стандартной Pyth quine для добавления функции try-Кроме.
источник
AutoIt ,
488429362 байтаМой мозг болит, это слишком мета
Это довольно интересно, так как он компилирует дочерний процесс, который в свою очередь продолжает выводить 1 в ToolTip API, пока не будет нажата ESC. Если нажать ESC, дочерний процесс убивает себя, а родительский (этот quine) возобновляет выполнение и выгружает свой источник в буфер обмена . Вы должны запустить это из редактора.
Кстати: это создает вспомогательный файл «а» на вашем диске.
источник
C
239221206172 байтаОпределенно может быть намного короче, но я должен был отправить что - то на PPCG в конце концов .
Компилируется с gcc 5.2.1 (с различными предупреждениями).
источник
Haskell, 206 байт
источник
C #, 339 байт
источник
delegate
можно заменить на()=>
. Почему неk
локальная переменная?Perl 5.10+, 64 байта
Требуется Perl 5.10+ для
say
, который может быть включен либо-M5.010
или-E
.Как это устроено
Это еще один вариант следующего квинуса, который я, похоже, использую при каждом вызове квин:
Сломано:
источник
1
с разделителями. Исправлено по стоимости 2 байта.