Реализации транслятора Python

Классическая компиляция и интерпретация

  • Транслятор — Общее название программ, задача которых превратить ваши текстовые файлы с кодом во что-то исполняемое.

  • Компилятор — в классическом понимании это транслятор генерирующий машинный код для процессора, однако часто современные компиляторы компилируют в байт-код для виртуальных машин или как это ещё называют в intermedia representation (IR).

  • Интерпретатор — в классическом понимании это транслятор исполняющий (интерпретирующий) программу без генериции нового машинного кода.

  • Транспилятор — транслятор преобразующий код с одного языка программирования (ЯП) на другой.

Современная компиляция и интерпретация

  • Just it Time (JIT) компилятор — компиляция в машинный код происходит не во время сборки программы разработчиком, а во время работы программы у пользователя.

  • Современные трансляторы это многоуровневые системы в которых могут одновременно использоваться и интерпретация, и компиляция, и JIT компиляция.

Список трансляторов Python

  • CPython — стандартный интерпретатор Python, говорим Python подразумеваем CPython.

  • Jython — реализация CPython для JVM.

  • PyPy — JIT-компилятор (!) Python.

  • Python for .NET — Python реализующий интеграцию с .NET экосистемой через C API.

  • IronPython — Реализация Python через Dynamic Language Runtime

  • Cython — транспилятор Python, превращающий код на Python в код на C.

  • Xeus — is a Jupyter kernel for Python based on the native implementation of the Jupyter protocol xeus.

  • Pyodide — CPython скомпилированный под WebAssembly.

  • MicroPython — компактный интерпретатор Python для микроконтроллеров.