Оглавление
ИСХОДЯЩИЙ ОТ
-
Основы COMEFROM
- COMEFROM – это структура потока управления, которая используется в некоторых языках программирования.
- Она является обратной функцией GOTO и позволяет передавать управление из произвольной точки кода.
- Точка передачи состояния указывается в качестве параметра.
-
Особенности и ограничения
- В зависимости от языка, несколько исходных данных могут быть недопустимыми или иметь разный приоритет.
- COMEFROM требует сканирования всей программы для определения инструкций, которые могут его использовать.
- Отладка с использованием COMEFROM усложняется, так как нет указаний на переход управления в другую точку программы.
-
История и реализация
- COMEFROM был впервые замечен в списках инструкций на языке ассемблера joke.
- Он был рассмотрен в статье Р. Лоуренса Кларка в 1973 году.
- COMEFROM был реализован в C-INTERCAL и в Python с использованием перехватчиков отладчика.
- В статье Ричи Хиндла от 1 апреля 2004 года была представлена реализация COMEFROM для Python.
-
Практическое применение
- Пример программы на гипотетическом языке БАЗОВЫЙ с использованием COMEFROM вместо GOTO.
- Пример программы на Python с установленным модулем joke goto, который использует перехватчики отладчика.
- Примеры использования COMEFROM в других языках программирования, включая Fortran и Ruby.
-
Продолжение и рекомендации
- В статье упоминаются другие программные ухищрения, которые используют идеи, похожие на COMEFROM.
- Ссылки на внешние ресурсы и информационные страницы для более глубокого изучения темы.