Python 3.14:n uusi tulkki voi nopeuttaa ohjelmien suoritusta jopa 30 % ilman, että koodia tarvitsee muuttaa. Pythonin seuraavan suuren version beta-julkaisu on odotettavissa toukokuussa 2025.
CPython 3.14:n muutospäiväkirjassa uutta ominaisuutta kuvaillaan "uudeksi tail call -pohjaiseksi tulkiksi". Tämä voi olla hämmentävä ilmaus niille, jotka eivät seuraa Pythonin kehitystyötä tarkasti. Tässä yhteydessä "tail call" ei tarkoita, että Python tukisi nyt häntärekursion optimointia, vaan kyse on optimoinnista, jonka C-kääntäjä tekee CPythonin sisäiseen koodiin. Tämä parantaa tulkin tapaa käsitellä tavykoodikäskyjä ja siten nopeuttaa ohjelmien suoritusta.
Kehittäjien ei tarvitse tehdä muutoksia olemassa olevaan Python-koodiin hyötyäkseen nopeutuksesta. Myös CPythonille tehdyt C-laajennusmoduulit toimivat edelleen ilman uudelleenkääntämistä, koska tulkin rajapintoihin (API) ja binaariliittymiin ei ole tehty muutoksia. Lisäksi tulkin ylläpitoon ei ole tullut merkittävästi lisää työtä, sillä suurin osa uudistuksesta perustuu jo olemassa olevan koodin hyödyntämiseen.
Käyttäjille, jotka asentavat valmiiksi käännetyt CPython-binaarit, uusi tulkki tulee osaksi Python 3.14 -päivitystä. Sen sijaan, jos Python käännetään lähdekoodista, tulkin käyttäminen edellyttää erillistä kääntäjäasetusta.
Tärkeää on, että uusi tulkki vaatii C-kääntäjän, joka tukee tail call -optimointia. Tällä hetkellä se toimii MSVC:llä sekä Clang 19+:lla (x86-64 ja AArch64 -arkkitehtuureilla). Tulevaisuudessa myös GCC-kääntäjän odotetaan tukevan tätä ominaisuutta.
Python on tunnetusti hitaampi kuin käännetyt kielet, kuten C/C++ ja Rust, koska sen dynaaminen luonne tekee optimoinnista haastavaa. Tämä ei kuitenkaan ole estänyt kehittäjiä pyrkimästä nopeuttamaan CPythonia rikkomatta taaksepäin yhteensopivuutta. Monet näistä optimoinneista keskittyvät vähentämään tulkin tekemää työtä, esimerkiksi erikoistettujen käskyjen (opcode) ja muiden JIT-tyyppisten optimointien avulla.
Vaikka monet suorituskykyparannukset ovat olleet marginaalisia, ne kumuloituvat. Tämä uusi tail call -optimoitu tulkki on yksi harvoista muutoksista, joka voi tuoda laajasti merkittävän suorituskykyparannuksen. Tärkeää tässä kehityksessä on, että käyttäjät saavat lisää suorituskykyä ilman, että heidän tarvitsee muuttaa koodiaan.
Ensimmäinen Python 3.14:n beta-julkaisu, jossa uusi tulkki on mukana, julkaistaan toukokuussa 2025. Jo aiemmat alpha-versiot sisältävät uuden tulkin testattavaksi.