Мне пришлось для своего развития читать исходники. Так вот, каждого программиста существует свой почерк, свой стиль...
У одних все закладывается в одну процедуру.. длинная при длинная, лабиринт. Другие же любят все самую простую задачу расписать на двадцать файлов.. так им удобно..
Бывает все сжато-кратко, понятно и профессионально. И я думаю, что так думает компилятор.. Это синтаксис написание программ..
И закладывается идея, ради чего все пишется, её форма видна из элементов. Даже можно концовку разглядеть.. Писать разумеется можно по всякому.
- это все лирика..
Мне кажется, что у вас сейчас идея не до конца реализуется через синтаксис.. или вступило в противоречие..
Смотрите, у меня же тоже сходная была задача, также есть реализация событий:
есть 3D объекты, анимация, шейдеры.. и есть пространство скриптов - их как то надо объединить.
Так вот пришлось сделать два вида сообщения: Events(быстрые) - это уровня 3D объектов - они процедурные.. и Message(медленные) - уровень скриптов, они стековые.При этом Events могут порождать Message..