Wadler написал удивительную статью: Предложения как типы - где он говорит о Howard-Curry, что вы можете проверить поведение программы с точки зрения типов программы. (Для данного подмножества языков).
Недавно Rich Hickey опубликовал Clojure spec, для определения спецификаций данных и функций.
Здесь комментатор пишет:
от Wadler у нас есть такие реквизиты ≅ типов, спецификации ≅ реквизиты → типы ergo могут выполнять статические спецификации/контракты/проверки типов.
Мой вопрос: Являются ли Clojure спецификациями, эквивалентными предложениям Wadler?