Наибольший общий предок
Apr. 18th, 2013 09:22 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Ребенок периодически компостирует мне мозги задачами на сложение чисел. Пока это просто числа, оно еще куда ни шло, но потом ей становится скучно и она добавляет к ним размерности, причем разные. Типа "сколько будет 3 воздушных шарика+2 бабочки".
Только сейчас спросонья дошло, что можно же свести объекты к общему предку и дать ответ в виде "число+тип предка". Ну как в скале - если в список добавить разных объектов, она автоматом тип к более общему сведет.
Но скажем, если из общего предка там только "объект", но у объектов есть общие свойства, например бабочки и шарики могут летать - не надо ли, в дополнение к объекту выводить еще и общие интерфейсы? В таком случае будет ответ "5 летающих объектов".
Только сейчас спросонья дошло, что можно же свести объекты к общему предку и дать ответ в виде "число+тип предка". Ну как в скале - если в список добавить разных объектов, она автоматом тип к более общему сведет.
Но скажем, если из общего предка там только "объект", но у объектов есть общие свойства, например бабочки и шарики могут летать - не надо ли, в дополнение к объекту выводить еще и общие интерфейсы? В таком случае будет ответ "5 летающих объектов".
no subject
Date: 2013-04-18 07:09 am (UTC)Я полагаю, что это из-за того, что сабтайпинг рассматривается как отношение предпорядка, обычно обозначаемое как ≤. А так как top это супертайп для любого типа, значит он меньше всех. Но это исключительно мои догадки.
no subject
Date: 2013-04-18 07:20 am (UTC)Т.е получается bottom <: обычные типы <: top
no subject
Date: 2013-04-18 07:23 am (UTC)no subject
Date: 2013-04-18 09:04 am (UTC)