Как отметил Стив в комментариях, случай 1) обычно не считается квинем, вероятно, потому что его очень тривиально сделать на любом языке, который может выполнять файловый ввод / вывод
, случай 2) - это то, что имеет в виду большинство людейкогда они говорят «quine», «умное использование строк» - это та часть, которой вы хвастаетесь.
в некоторых языках существует третий случай (который также обычно не считается истинным quine, поскольку он дажеболее тривиально, чем случай 1).Если язык позволяет правильно сформировать программу, в которой нет операторов, то эта «пустая» программа обычно ничего не печатает, что, конечно, совпадает с ее исходным кодом.например, скрипт TCL:
напечатает:
;)