Здравствуйте, jazzer, Вы писали:
J> и еще отсутствие разделения на процедуры и функции
Загадка. Слабо на Си или Си++ написать тип функции принимающей в качестве аргумента и возвращающей переменную ее собственного типа?
На Component Pascal это элементарно:
TYPE
Action = PROCEDURE (a: Action): Action;