PyPy

PyPy
software
Logo
Logo
GenereCompilatoreCategoria:Compilatori liberi
SviluppatoreDiversi (volontari)
Data prima versione2002
Ultima versione7.3.20 (4 luglio 2025)
Sistema operativoMultipiattaformaCategoria:Software multipiattaforma
LinguaggioCategoria:P277 letta da WikidataRPython
PythonCategoria:Software libero in Python
LicenzaLicenza MIT
(licenza libera)
Sito webpypy.org/
Categoria:Software con licenza MITCategoria:Software del 2002Categoria:P571 letta da WikidataCategoria:P154 letta da WikidataCategoria:P348 letta da WikidataCategoria:P856 letta da WikidataCategoria:Software per Debian

PyPy è un interprete Python e un compilatore JIT. È compatibile con l'interprete CPython.

PyPy è stato finanziato dall'Unione europea come Progetto obiettivo di Ricerca.

PyPy è iniziato come un interprete Python scritto nello stesso linguaggio Python. Attualmente, le versioni di PyPy vengono tradotte da RPython in codice C e compilate. Il compiler JIT di PyPy è capace di trasformare codice Python in codice macchina a runtime.

RPython

L'interprete PyPy stesso è scritto in un sottoinsieme limitato di Python chiamato RPython (Restricted Python). RPython pone alcuni vincoli al linguaggio Python in modo tale che il tipo di una variabile possa essere dedotto in fase di compilazione.[1]

Il progetto PyPy ha sviluppato una toolchain che analizza il codice RPython e lo traduce in una forma di codice byte, che può essere ridotto in C. C'erano altri backend oltre a C: Java, CSharp e Javascript ma quelli soffrivano di bitrot e sono stati rimossi.[2] Quindi il logo ricorsivo di PyPy è un serpente che si ingoia poiché RPython è tradotto da un interprete Python. Il codice può anche essere eseguito non tradotto per test e analisi, il che fornisce un buon banco di prova per la ricerca sui linguaggi dinamici.

Note

  1. "It is a proper subset of Python, restricted in a way that enables easy analysis and efficient code generation" ("È un vero e proprio sottoinsieme di Python, limitato in modo da permettere una facile analisi e un'efficiente generazione di codice".), Ancona et al., 2007.
  2. Al Sweigar, Automate the Boring Stuff with Python, No Starch Press, 2019, ISBN 978-1593279929.

Collegamenti esterni

  Portale Software libero: accedi alle voci di Wikipedia che trattano di software libero
Categoria:Python
Categoria:Compilatori liberi Categoria:P1324 letta da Wikidata Categoria:P1401 letta da Wikidata Categoria:P154 letta da Wikidata Categoria:P2537 letta da Wikidata Categoria:P277 letta da Wikidata Categoria:P3442 letta da Wikidata Categoria:P348 letta da Wikidata Categoria:P571 letta da Wikidata Categoria:P856 letta da Wikidata Categoria:Python Categoria:Senza fonti - gennaio 2013 Categoria:Senza fonti - software Categoria:Software con licenza MIT Categoria:Software del 2002 Categoria:Software libero in Python Categoria:Software multipiattaforma Categoria:Software per Debian Categoria:Stub - software Categoria:Voci con template Collegamenti esterni e qualificatori sconosciuti