Результаты поиска
Компилятор — преобразует исходный код в другой целевой вид (машинный код, байткод) до исполнения.
Этапы
-
Лексический и синтаксический анализ → AST.
-
Семантический анализ, построение промежуточного представления (IR).
-
Оптимизации (inlining, dead code elimination, register allocation).
-
Генерация машинного кода/байткода и линковка.
Варианты
-
AOT (ahead-of-time) — сборка перед запуском, быстрый runtime, длиннее build.
-
JIT (just-in-time) — компиляция в runtime горячих участков, баланс скорости старта и исполнения.
-
Инкрементальная/clangd-style — пересборка изменённых частей для IDE.
Примеры
-
AOT: gcc/clang (C/C++), Rustc.
-
JIT/гибрид: HotSpot (JVM), .NET CLR, V8.
См. также: Интерпретатор.