Re[33]: И кстати про макросы Dart
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 26.09.25 10:14
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>парни в Dart потратили несколько лет на эксперименты. Если они видят, что компиляция выезжает дорогая — значит, для них так и есть.


Вопрос в том, какую компиляцию считать "дорогОй". При компиляции больших текстов на C++, активно использующих шаблонную магию (которую неявно используют многие шаблоны std), количество создаваемых этими шаблонами вспомогательных классов/шаблонов может достигать тысяч и десятков тысяч. При вложении этих конструкций друг в друга количество этих сугубо мусорных объектов растет в геометрической прогрессии. Я не изучал предметно эти зависимости, но жалоб на "очень медленную компиляцию" полно, а ведь в популярных компиляторах обработка этих конструкций наверняка неплохо оптимизирована.

S>Хотя С++ практически целенаправленно организован так, что в нём невозможно сделать эффективную компиляцию.


Да можно, почему нет. Но тогда нужно прекратить вынос конструкций, генерирующих исполняемый код, в заголовки, включаемые множеством разных файлов. А это повлечет ухудшение оптимизации кода. Какую-то оптимизацию нынче делают линкеры, их возможности далеки от компиляторских.

S> Но всякие SFINAE выглядят как неизбегаемые грабли, заложенные с самого начала.


Ну да, без них же не будет работать магия.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.