Я хотел бы знать, как именно современные типизированные функциональные объектно-ориентированные языки, такие как Scala и OCaml, объединяют параметрический полиморфизм, подтипирование и другие их функции.
Являются ли они основаны на System F <: или что-то более сильное или слабее?
Есть ли хорошо изученная формальная система типа, например System F C для Haskell, которая может служить "ядром" для эти языки?