как можно делать песочницу для кода?
например, берем плохой код котооый содержит прыжок к далекой памяти за пределами кода или прыжок на себя же для бесконечного цикла.
как можно написать код-песочницу который гарантирует что плохой код будет обработан и завершиться через конечное время? (например 1000 инструкций). и что он не изменит память вне песочницы
кстати, вспомнилась одна малоизвестная сейчас область, для которой задавались подобные вопросы: языки и компиляторы для создания игр на бытовых микрокомпььютерах 80х: i8080, 16-32К ОЗУ, и полное отсутствие внешней быстрой памяти.
даже компактности асма не хватало, изобретали всякие схемы кодирования, в т.ч. свертки кода, чтобы уместить и логику, и уровни, и спрайты, и не ждать потом 20 минут, пока с кассеты zx chess загрузится