Мне нужен самодостаточный HTTP-сервер, а не реализация протокола от 1996 года, которой для работы всё равно нужен HTTP-сервер :-) Так что не сложно, а нахрен не впилось :-)
Да я сразу так и понял что ты не от мира сего. «Хочу чтоб мне сделали с++ как в лиспе».
Интересно, что же заставляет тебя писать на этом «недоязыке» а не на лиспе? У тебя же есть божественный лисп, зачем тебе что то еще?
А есть предпосылки к заметному ускорению? Как-то на reddit-е были сообщения о том, что народ пробовал использовать VC++ с поддержкой модулей на более-менее реальных кодовых базах и особого выигрыша не было.
Огромное ускорение будет в IDE, объясню почему.
В компиляторах C++ есть 6 стадий: три относятся к фронтенду (препроцессинг и лексический анализ, парсинг в AST, проход AST для проверки семантики), три относятся к бекенду (обход AST для генерации IR - промежуточного кода, оптимизация IR, трансляция IR в машинный код вместе с распределением регистров и специфичными оптимизациями).
Тормозят две стадии: парсинг AST и оптимизация IR.
оптимизация тормозит потому что в каждом файле получается много инструкций IR после обработки include, и после обработки модулей из C++2x так же много IR, то есть ничего не меняется
а вот парсинг AST тормозит, потому что инстанцирование всех конкретных специализаций всех шаблонов происходит заново для каждого файла в ходе повторного разбора заголовков, по сути это задача сложности O(N*H), где N - число файлов в проекте, H - число заголовков, используемых проектом. Модули эту сложность снижают до O(N+H)
Поскольку в компиляторе есть фронтенд и бекенд, ускорение фронтенда погоды не сделает (ну в лучшем случае 50% или немного выше выигрыш будет).
А вот в IDE при обработке кода для автодополнения, подсветки и т.п. используется только фронтенд компилятора без бекенда, и ускорение будет колоссальным с учётом того что IDE видит, что изменился только один файл и используемые им модули обновлять не надо. Сейчас libclang один C++ файл среднего проект на моей машине парсит в среднем за 1 секунду, в худших случаях за 3-5 секунд. С модулями будет парсить так же быстро, как модуль go/ast языка golang: за милисекунды.
Qt creator внешние файлы парсит и кэширует но это же так сложно. Не, кэшировать мы не будем а стандартизуем не пойми что чтоб подпереть тормозные жабо-ide
концепты модули итд будет все в 20, а вообще классный качественный софт и на старом 98 люди писали, а вот какой сейчас качественный и классный софт на ВАШЕМ языке написан ?
Интересно, что же заставляет тебя писать на этом «недоязыке» а не на лиспе?
Не все задачи можно решить на Лиспе :-) Не все задачи можно решить на цепепе :-) Последнему вообще приписывают «язык общего назначения» с какого-то перепуга, хотя WEB-интерфейсы почему-то делаются на JavaScript :-)
У тебя же есть божественный лисп, зачем тебе что то еще?
в том что std всегда из кароПки а буст еще стянуть надо да и кишки там побольше, много зависимостей от зависимостей, да и вообще вы в буст смотрели ? там местами такой треш...
вы к нам из прошлого ? где к небольшому мобильному якобы телефону полагался большой тяжелый чумойданчик с проводками к этому самому телехфону ? нет уж, спасибо, жуйте буст сами