> -- Geniepro писал(а):
> что бы статически проверять инварианты...
Те инварианты, которые можно проверить статически, тривиальны.

Разница между статикой и динамикой - это разница между полной разрешимостью и частичной (знаём всё множество интересующих нас вещей; или всего лишь имеем возможность относительно каждого конкретного объектов  - конкретного хода выполнения - проверить его принадлежность к множеству).

Разница фундаментальная, и хоть убей себя ап стенуНу дык программёрам закон не писан.