dmzlj -
dmzlj — 19.05.2010
Хиндли-Миллнер, модифициованный для языков с классами и
наследованием должен выглядеть забавно. Вместо равенства типов в
унификации надо будет использовать операцию проверки, не является
ли тип A наследником B или наоборот. Если внутри языка иерархия
классов представлена лесом (это еще если нет множественного
наследования, а оно ведь есть даже в джаве: интерфейсы), то это все
будет давать очень приличный множитель к сложности унификации, а
оно и так ведь достаточно сложное.Плюс казусы
class Core {
// нету someMethod();
}
class A : Core {
public void someMethod();
}
class B : Core {
public void someMethod();
}
///
///auto x = someFactory().create();
auto x = null;
x.someMethod();
// Ну и какого класса у нас x ?
Строительство и эксплуатация инженерных сооружений: содержание курса и практическое применение 
