Цитата Сообщение от captain cobalt
Сигнатура - это всё равно неотъемлемая часть документации.
Нужно лишь её определённым образом отмечать, чтобы хэш считался только от неё.
Зачем сюда вообще прилеплять документацию? Да ни в жизни библиотеки не различались по версии описания.

Цитата Сообщение от captain cobalt
Можно каждый виджет поместить в свой модуль.
Тогда в импорте можно прописать только те модули, которые используются.
Именно так, при этом главному менеджеру оболочки будет абсолютно монопенисуально что рисовать и как опрашивать.

Цитата Сообщение от elf/2
проверка сигнатур нормально работает только на этапе компиляции.
Чего???? Как раз только на этапе линковки. Чтобы знать что и с чем склеивать.

Цитата Сообщение от elf/2
в динамике у нас есть только два имени и все. в этом случае я не вижу чем имя функции memcpy хуже memcpy_VI#43543 (написанной руками) с точки зрения безопасности и отсутствия dll hell. и главное никто проверить уже не сможет что мы ее зовем правильно просто сравнивая имена.
С точки зрения линкера, все эти имена равнозначны. Но для пущей унификации весьма и весьма желательно закодировать в сигнатуре входные параметры и возвращаемый тип. Убиваем сразу несколько зайцев- можем свободно иметь перегружаемые функции, отпадает необходимость постоянно смотреть в документацию дабы вспомнить в каких регистрах параметры передаются и получаем зачин на использование ЯВУ (а компиляторы именно так кодируют названия функций)