Добрый вывод с подтипом
Есть ли примеры систем логического вывода с подтипами? В системах типов, таких как Haskell, нет никакого полиморфизма на добром слое. Как правило, определение типа с помощью параметрического полиморфизма представляет собой сложную проблему, но поскольку виды не являются полиморфными, будет ли это возможным сделать вывод типа с подтипированием?
В частности, я думаю о видах в контексте расширяемых записей. Как те, что на бумаге "Расширяемые записи с метками в областях " или PureScript.
Я думаю о некоторой грамматике:
k ::= * kind of term types
| record kind of record types
куда record
это подтип *
в правилах набора текста.