Насколько часто типы вообще используются для описания домена, а не для описания конструкций программы? Есть заход на это в DDD, но кривой, так как ООП так себе метамодель, в DDD+F# чуть лучше, так как от "куска памяти с функциями" поднялись хотя бы до уровня типа-ML. Где-то ещё? Куда ни посмотреть про типы в программировании, так это про то "как нам не забыть соединение сетевое закрыть" или "как нам память руками не выделять".
функциональные системы типов выстраиваются так, чтобы соответствовать определенным конструктивным логикам, например логике предикатов, или логике высказываний высшего порядка, поэтому предполагается, что вопросы моделирования можно задать и логикам, а вот вопросы стыковки конструктивной математики с "железом" будут специфичны для этой области