Что есть хуки в Ящике и какую роль они выполняют?

Например, генератор диалоговой формы FormGen.Create вызывает процедуру Views.Open(v, loc, name, NIL) для открытия отображения в отдельнном окне, а та, в свою очередь, обращается к методу viewHook.Open. Переменная viewHook имеет абстрактный тип ViewHook, с абстрактными же методами, которые реализуются в StdDialog, там же и создаётся экземпляр viewHook.

Ещё, на форуме "Мысли об Обероне" есть такое сообщение двухлетней давности:

> -- Цитата:
> № 2355   04-07-2005 07:09	  А на счет "волшебного" Kernel.Hook из Oberon microsystems AG отписали, что это не баг, а фича  :...types which extend Kernel.Hook are a configuration mechanism intended to be used only by framework programmers. "Normal" BlackBox clients should neither use nor see hooks. That's why DevBrowser masks them out.CheersMarc,Oberon microsystems AG
(Собс-но, в этом и причина, почему хуки не показываются в интерфейсе, в обычном режиме.)

Интересует именно архитектурное назначение хуков, почему именно хуки, и почему именно так?