Задача состоит в том, чтобы написать детерминированную программу (любой язык / ОС), которая не принимает аргументов или других входных данных и ведет себя в отладчике иначе, чем в случае отладки .
Например, программа может что-то выводить при отладке, но ничего не выводить, когда не отлаживается. Или выводить что-то свое в каждом случае. Или это может произойти сбой при отладке, но не может произойти сбой, если не отладка. Или наоборот.
Предостережения и уточнения:
- Сроки разницы не в счет.
- Интерпретированные языки разрешены.
- Чтобы подчеркнуть детерминизм: поведение должно быть точно воспроизводимым как внутри, так и вне контекста отладки.
- Наличие самого отладчика должно быть единственной разницей между двумя случаями.
- Указание отладчику добавить входные данные (stdin или argv ENV или что-то еще) является обманом, отладчик должен запустить программу «как есть».
- Изменение среды (например, работа на виртуальной машине или в другой ОС или изменение настроек ОС, таких как ограничения памяти) между отладочными и не отладочными запусками не допускается.
Самый короткий код выигрывает. Я могу присудить вознаграждение, которое показывает что-то интересное о том, как работают отладчики.