Подскажите, пожалуйста, можно ли как-либо сделать вынесенное в заголовок.
К примеру, если есть некоторое определение типа множества
abstype 'a Set = set of 'a list
with
(* здесь определены некоторые операции над множествами *)
end
Тогда, например, тип
int Set несравним (doesn't admit equality), хотя
int list, который лежит в основе сравним. Вот
здесь пишут, что нельзя переопределить сравнение. Для datatype и structure равенство определяется структурно, а вот abstype как-то обходят стороной. Может быть все-таки есть какая-нибудь возможность получить сравнимые абстрактные типы?