Для передачи имен функций и процедур в качестве фактических параметров обращения к другим процедурам и функциям были созданы процедурные типы. То есть с помощью процедурного типа обычные процедуры и функции можно интерпретировать как некоторую разновидность переменных. Определение процедурного типа состоит из зарезервированного слова procedure или function, за которым следует полное описание параметров. Для функции доп. указывается тип рез-та.
type
TProc = procedure (X, Y: Integer);
TFunc = function (X, Y: Integer): Boolean;
Определив процедурный тип, можно непосредственно перейти к так называемым процедурным переменным. Они объявляются точно так же, как и обычные переменные.
var
P: TProc;
F: TFunc;
Директивы inline позволяют писать процедуры и функции, кот. преобразуются при каждом вызове в заданную последовательность инструкций, представляющих собой машинный код.
После того как выполнение текущей программы прервано, процессор должен перейти к выполнению программной процедуры, связанной с этим событием – процедуры обработки прерывания. Для ее создания используется директива interrupt (директива - это почти то же самое, что и команда, только обозначает указание компилятору выполнить определенное действие. При помощи директивы END, например, помечается конец программы.)