Представлен новый компактный компилятор 8cc

Жуй Уияма (Rui Ueyama) из компании Google в рамках проекта 8cc разработал новый компактный компилятор для языка Си. Задачей проекта является обеспечение поддержки всех возможностей стандарта C11, сохранив кодовую базу компилятора как можно более компактной и простой. Исходные тексты распространяются под лицензией MIT.

При разработке больше внимание уделено читаемости кода, который написан с оглядкой на простоту изучения исходных текстов, что позволяет использовать 8cc в качестве учебного пособия для изучения техник построения компиляторов и особенностей обработки Си-кода на каждой стадии компиляции. При этом оптимизация результатов работы пока оставляет желать лучшего и генерируемый код обычно в два или более раз отстаёт по скорости выполнения от GCC. Реализация разумного уровня оптимизации относится к планам на будущее.

8cc поддерживает только сборку для архитектуры x86-64 на платформе Linux. Портирование на другие системы не является первоочередной задачей и будет реализовано только после устранения имеющихся проблем и реализации должного уровня оптимизации. В настоящее время компилятор уже успешно проходит тест собственной пересборки, но так как разработка ведётся всего несколько месяцев, пока не исключается возникновение проблем и ошибок при сборке других проектов.

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

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

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