Чем делегат отличается от процедурного типа в Обероне, где сигнатура жестко зафиксирована как часть всей системы строгой типизации?

Что-то на эту тему похоронено в этой ветке:viewtopic.php?f=29&t=2125
хотелось бы просто выделить отдельно и ясно.

(Делегат = безопасный указатель на функцию, см.http://ru.wikipedia.org/wiki/%D0%94%D0% ... 0%B8%D0%B5))