Прежде всего, я не знаю, что не так с зависимыми типами и почему мы не видим, чтобы они реализовывались на существующих языках для практического программирования, вместо того, чтобы изобретать всевозможные трюки (шаблоны!), чтобы обойти ограничения существующих систем типов, которые в лучшем случае имеет очень простое и ограниченное обобщение.
Но мой вопрос касается зависимых типов для данных, а не для программы, как или можно использовать их для проверки структурированных данных? Смысл, например, json или xml или любые структурированные данные, можно ли эффективно проверить их с помощью некоторой зависимой системы типов?
Edit:
Я имел в виду под зависимыми типами его наиболее широкое определение "тип, зависящий от значения", и не обязательно, чтобы эти теоретические сотрудники и сотрудники CoC. Я не знаю их, и я не хочу идти по этой дороге, я не верю в то, что это единственный и не лучший способ получить приличные зависимые типы. В FP кодеры записывают свою сложную логику каждый день очень элегантно, конструктивно со всей простотой и без проблем. Я считаю, что у них будет своя окончательная "элегантная" зависимая типизация.
Однако мой вопрос касался чистых данных, в отличие от кода, когда большая проверка может быть просто ненужной и может просто скрываться в потоке и логике программы, даже динамическая типизация может работать нормально. В данных это не тот случай, когда вы хотите проверить правильность документа и дать четкие сообщения об ошибках. В другой руке данные не имеют проблемы сложности, когда вам приходится иметь дело с "функциями" в очень экстремально зависимой системе типов (семейства CoC).