Теперь мы все знаем, что большинство языков имеют очень простые способы «самоизменения» кода. Тем не менее, что если бы вы на самом деле изменили код и отредактировали его части ... на диске?
Ваша цель - создать код, который печатает число, а затем редактирует свой собственный файл, чтобы заменить число следующим в последовательности Фибоначчи, например:
$ ./program
1
$ ./program
1
$ ./program
2
$ ./program
3
$ ./program
5
[etc...]
правила
- Вы не можете хранить число «вне» кода. Без комментариев, без указания сценария на выход, без EOF и т. Д.
- Если ваш код работает с любым именем файла, вычтите 2 из вашего байта и напишите
$BYTESNOW ($ORIGINALBYTES - 2)
в своем заголовке. (Предполагается, что имена файлов находятся в пределах любого алфавитно-цифрового пути к файлу.) - Ваш код должен записать вывод в файл сам по себе, без какой-либо внешней помощи по трубопроводам.
- Ваш код может начинаться с единицы или с нуля. Это не важно
perl6 program
), или она должна включать строку shebang, чтобы ее можно было назвать как ./program
?
program
, и можем ли мы предположить, что оно находится в текущем рабочем каталоге?
"a"
вместо arg[0]
. Это не стоит того.