Python se encuentra en múltiples implementaciones, dependiendo del lenguaje objetivo, antes hay que entender que diferencia hay entre lenguaje e implementación.
Un lenguaje de programación es una serie de instrucciones en lenguaje formal que tienen la capacidad realizar una tarea para entregar un resultado.
Una implementación de lenguaje de programación es un sistema para ejecutar programas de computadora.
Hay dos enfoques generales para la implementación del lenguaje de programación:
Interpretación: un intérprete toma como entrada un programa en algún idioma y realiza las acciones escritas en ese idioma en alguna máquina.
Compilación: un compilador toma como entrada un programa en algún idioma y traduce ese programa a otro idioma, que puede servir como entrada para otro intérprete u otro compilador.
Implementación | Lenguaje | Ejecución |
CPython | C | Nativo |
Jython | Java | JVM |
IronPython | C# | .NET |
pypy | RPython | Nativo |
CPython es la implementación de referencia de Python, escrita en C. Compila el código de Python en un bytecode intermedio que luego es interpretado por una máquina virtual. CPython proporciona el más alto nivel de compatibilidad con los paquetes Python y los módulos de extensión C.
Jython, IronPython solo tienen soporte hasta Python 2.
https://en.wikipedia.org/wiki/Programming_language
https://stackoverflow.com/questions/17130975/python-vs-cpython
https://en.wikipedia.org/wiki/Programming_language_implementation