Короче, всё сводится к тому, что как только мы поняли, что ключевое свойство – это компактность, нам открывается возможность убрать тысячи костылей и создать подходящую обобщённую абстракцию (в данном случае теорему). А до этого момента мы будем вынуждены обрабатывать разные случаи отдельно.
Мне это видится так.
Получается очень забавно. Нужно для прототипа внимательно посмотреть на часто используемые типы в разных контекстах на предмет "не правда ли, что его подмножество свойств это отдельный тип"