PyPy: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
7.3.15 (Wikidata) Etichette: Modifica da mobile Modifica da web per mobile |
||
(5 versioni intermedie di 4 utenti non mostrate) | |||
Riga 1:
{{F|software|gennaio 2013}}▼
{{S|software}}
▲{{F|software|gennaio 2013}}
{{Software
|Nome = PyPy
|Sviluppatore =Diversi (volontari)
|UltimaVersione =
|DataUltimaVersione =
|SistemaOperativo = multipiattaforma
|Linguaggio =
Line 21 ⟶ 20:
== 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.<ref>"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.</ref>
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.<ref>{{cite book|title=Automate the Boring Stuff with Python|url=https://python.engineering/automate-the-boring-stuff-with-python/|author=Al Sweigar|date=2019|ISBN=978-1593279929|publisher=No Starch Press}}</ref> 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.▼
▲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 (linguaggio di programmazione)|Java]], [[CSharp]] e [[Javascript]] ma quelli soffrivano di bitrot e sono stati rimossi.<ref>{{
== Note ==
<references/>
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{cita web|url=https://morepypy.blogspot.com/|titolo= Blog ufficiale|lingua=en}}▼
▲* {{cita web|https://morepypy.blogspot.com/|Blog ufficiale|lingua=en}}
{{portale|software libero}}
|