В субботу планируем поговорить про устройство компилятора, в гостях будет архитектор из PVS-Studio.



Тезисы для разговора:



1) Что вообще делает компилятор (в общих чертах);



2) Парсинг. Как работает, какие разновидности бывают;



3) Неоднозначности в грамматике. Как с ними бороться;



4) Почему мы хотим идти только вперед и никогда не откатываться и почему это нереально;



5) Про плюсы и их "прекрасную" грамматику. Most vexing parse;



6) Как разбираться с ошибками в коде, если нам подсунули некомпилируемое;



7) Семантика и как мы вообще понимаем, что эти слова в коде значат;



8) Перегрузки функций;



9) Шаблоны в плюсах. Почему это круто, но при этом больно;



10) Как считать выражения во время компиляции;



11) Оптимизации;



12) Почему undefined behaviour - не баг, а фича (это про плюсы и сишечку в основном).





Если есть вопросы, задавайте, обозначу их на стриме.



SOER | PRO | Boosty