PyPyPy har stöd för JIT-kompilering på 32-bitars/64-bitars x86- och 32-bitars/64-bitars ARM-processorer. Det testas varje natt på Windows, Linux, OpenBSD och Mac OS X. PyPy kan köra ren Pythonprogramvara som inte är beroende av implementeringsspecifika funktioner.

Det finns ett kompatibilitetslager för CPython C API-tillägg som kallas CPyExt, men det är ofullständigt och experimentellt. Det föredragna sättet att ansluta till delade C-bibliotek är genom det inbyggda C foreign function interface (CFFI) eller ctypes-biblioteken.

HistoryEdit

PyPyPy är en uppföljning av Psyco-projektet, en specialkompilator för Python som specialiseras just-in-time och som utvecklades av Armin Rigo mellan 2002 och 2010. PyPy:s mål är att få en specialiserande kompilator med just-in-time-specialisering med räckvidd, vilket inte fanns tillgängligt för Psyco. Ursprungligen kunde RPython även kompileras till Java bytecode, CIL och JavaScript, men dessa backends togs bort på grund av bristande intresse.

PyPyPy var ursprungligen ett forsknings- och utvecklingsinriktat projekt. Efter att ha nått ett moget utvecklingsstadium och en officiell version 1.0 i mitten av 2007 var nästa fokus på att släppa en produktionsklar version med mer CPython-kompatibilitet. Många av PyPys ändringar har gjorts under kodningsprintar.

  • I augusti 2008 kunde PyPy köra några populära Pythonbibliotek som Pylons, Pyglet, Nevow och Django.
  • Den 12 mars 2010 släpptes PyPy 1.2 med fokus på snabbhet. Den innehöll en fungerande, men ännu inte stabil, just-in-time-kompilator.
  • Den 30 april 2011 släpptes PyPy version 1.5, som uppnådde kompatibilitet med CPython 2.7.
  • Den 9 maj 2013 släpptes PyPy 2.0, som införde stöd för JIT-kompilering på ARMv6 och ARMv7 JIT med alfakvalitet och inkluderade CFFI i standardbiblioteket.
  • Den 20 juni 2014 förklarades PyPy3 stabilt och införde kompatibilitet med det modernare Python 3. Den släpptes tillsammans med PyPy 2.3.1 och har samma versionsnummer.
  • Den 21 mars 2017 släppte PyPy-projektet version 5.7 av både PyPy och PyPy3, där den sistnämnda introducerade stöd av betakvalitet för Python 3.5.
  • Den 26 april 2018 släpptes version 6.0 med stöd för Python 2.7 och 3.5 (fortfarande betakvalitet på Windows).
  • Den 11 februari 2019 släpptes version 7.0 med stöd för Python 2.7 och 3.5.
  • Den 14 oktober 2019 släpptes version 7.2 med stöd för Python 3.6.9.
  • Den 24 december 2019 släpptes version 7.3 med stöd för Python 3.6.9.

FinansieringEdit

PyPy finansierades av Europeiska unionen som ett särskilt riktat forskningsprojekt mellan december 2004 och mars 2007. I juni 2008 meddelade PyPy att det fick finansiering som en del av Googles program för öppen källkod och gick med på att fokusera på att göra PyPy mer kompatibelt med CPython. År 2009 godkände Eurostars, ett EU-finansieringsorgan som är särskilt inriktat på små och medelstora företag, ett förslag från PyPy-projektets medlemmar med titeln ”PYJIT – en snabb och flexibel verktygslåda för dynamiska programmeringsspråk baserad på PyPy”. Eurostars finansiering varade fram till augusti 2011. vid PyCon US 2011 gav Python Software Foundation ett bidrag på 10 000 dollar till PyPy för att fortsätta arbetet med prestanda och kompatibilitet med nyare versioner av språket. anpassningen till ARM-arkitekturen sponsrades delvis av Raspberry Pi Foundation.

PyPy-projektet tar också emot donationer via sina statusbloggsidor. Från och med 2013 hade en mängd olika delprojekt finansiering: Det finns flera projekt som har finansierat följande: Python 3-versionskompatibilitet, inbyggt optimerat NumPy-stöd för numeriska beräkningar och stöd för transaktionsminne i mjukvara för att möjliggöra bättre parallellism.

Lämna ett svar

Din e-postadress kommer inte publiceras.