Facebook открыл код Warp, высокопроизводительного препроцессора для C/C++

Facebook открыл код проекта warp, в рамках которого подготовлен высокопроизводительный препроцессор для языков C и C++. Внутри компании препроцессор warp используется в качестве быстрой замены препроцессора cpp из состава GCC. Кроме GCC, Warp также может использоваться совместно с Clang. Warp написан на языке D, основной автор кода — Уолтер Брайт, автор компилятора DMD. Код Warp опубликован на Github под свободной лицензией BSL (Boost Software License).

Одной из ключевых особенностей Warp является кэширование результатов разбора С/C++ файлов препроцессором. Из-за того, что стадия разбора кода С++ является относительной медленной операцией использование Warp позволяет сократить время пересборки в условиях работы команд разработчиков над большими программными проектами и таким образом, увеличить эффективность разработки за счёт снижения времени ожидания. В тесте пересборки крупного программного проекта с большим числом зависимостей после изменения одного заголовочного файла при использовании Warp вместо штатного препроцессора из состава GCC наблюдается уменьшение времени пересборки от 10 до 40%, в зависимости от особенностей кодовой базы.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.