metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-04-18 09:22 am

Наибольший общий предок

Ребенок периодически компостирует мне мозги задачами на сложение чисел. Пока это просто числа, оно еще куда ни шло, но потом ей становится скучно и она добавляет к ним размерности, причем разные. Типа "сколько будет 3 воздушных шарика+2 бабочки".
Только сейчас спросонья дошло, что можно же свести объекты к общему предку и дать ответ в виде "число+тип предка". Ну как в скале - если в список добавить разных объектов, она автоматом тип к более общему сведет.
Но скажем, если из общего предка там только "объект", но у объектов есть общие свойства, например бабочки и шарики могут летать - не надо ли, в дополнение к объекту выводить еще и общие интерфейсы? В таком случае будет ответ "5 летающих объектов".

[identity profile] voidex.livejournal.com 2013-04-18 05:32 pm (UTC)(link)
> Если шарики, то ответ будет "задача не имеет смысла".
Т.е. например в задача "сколько ног у 2 человек и 3 собак" не имеет смысла?

[personal profile] alll 2013-04-18 05:51 pm (UTC)(link)
Почему это? Нога как основная опорная конечность или ключевая деталь движителя - тот самый уровень абстракции, при котором эта ваша задача обретает смысл. Более того, если вы перейдёте на ступеньку выше, то вопрос "сколько всего конечностей у 2 человек и 3 собак" тоже обретает смысл.