Компиляторы C++ написаны на различных языках программирования, включая:
- C++
- Системный язык (низкоуровневый язык, близкий к машинному коду)
- Ассемблер (язык, преобразующий мнемонику в машинный код)
Ранние компиляторы C++ были написаны на Си, что было естественным выбором, поскольку C++ является расширением Си. Пример такого компилятора — первый компилятор C++, написанный Бьерном Страуструпом в 1980-х годах.
Впоследствии были разработаны компиляторы C++, написанные на системных языках и ассемблере, чтобы обеспечить более высокую производительность и достичь более близкого к «железу» уровня.
Сегодня современные компиляторы C++ часто пишутся на C++ или комбинации C++ и ассемблера. Это позволяет разработчикам использовать преимущества более высокоуровневых конструкций C++, а также оптимизировать производительность на низком уровне.