Unladen Swallow je optimizovana grana CPython-a, namenjena da bude potpuno kompatibilna i znatno brža. Ciljala je da ispuni svoje zadatke dopunjavanjem ručnih virtuelnih mašina CPython-a sa upravo-na-vreme kompajlerom napravljenog korišćenjem LLVM.

Unladen Swallow
Originalni nazivengl. Unladen Swallow
Izgovara seAnlejden Svelou
ModelInterpretator programskoj jezika Pajton
Autor(i)Unladen Swallow Team
Aktuelna verzija2009Q3
Datum aktuelne verzije20.10.2009.
LicencaApache Licenca
Veb-sajthttps://code.google.com/p/unladen-swallow/

Projekat je imao za cilj poboljšano ubrzanje petog faktora u odnosu na CPython;[1] ovaj cilj nije ispunjen.[2]

Projekat je sponzorisao Gugl, i vlasnici projekta, Tomas Vojters, Džefri Jaskin, i Kolin Vinter, su i sami radnici u Guglu,[3] ali većina saradnika na projektu ipak nisu. Unladen Swallow je održavan na Gugl Kodu.[4]

Kao i mnoge stvari koje se tiču programskog jezika Pajton, "Unladen Swallow" je referenca Monti Pajton, specifično odnoseći se na brzinu vazduha neopterećenih lasti u Monti Pajton i Sveti gral.

Dostignuća

uredi

Uprkos svemu, Unladen Swallow je ipak imao neke kodove koji su dalje implementirani u glavnu implementaciju Pajtona, kao što su unapređenja na modulu cPickle.[5]

Aktivnost projekta

uredi

Tokom jula 2010., neki posmatrači su spekulisali o tome da li je projekat bio mrtav ili je umirao, od trećeg kvartala 2009. bitan događaj nije bio postignut.[6] Saobraćaj na poštanskoj listi Unladen-a se smanjio od 500 poruka u januaru 2010. do manje od 10 u septembru 2010.[7] Takođe je prijavljeno da je Unladen izgubio Guglovo finansiranje.[8] U novembru 2010., jedan od glavnih programera je izjavio da "Džefri i ja smo povučeni da radimo na drugim projektima bitnijeg značaja za Gugl".[9]

Četvrti kvartal 2009. programerske grane je napravljena tokom januara 2010.[10] ali nije bilo reklama na sajtu. Dalje, što se tiče planova na dužem putu i projekta što je propustio izbacivanje Pajtona 2.7, PEP[2] je prihvaćen, koji je predložio spajanje Unladen Swallow-a u specijalnu py3k-jit granu zvaničnog Pajtonovog skladišta. Od jula 2010., ovaj rad je započet.[11] Ovo spajanje je potrajalo neko vreme, otkad je Unladen Swallow originalno baziran na Pajtonu 2.6[12] sa kojim je Pajton 3 pokvario kompatibilnost (pogledati Pajton 3000 za više detalja). Ali, PEP je zatim povučen.

Tokom rane 2011. bilo je jasno da se projekat zaustavio.[13]

Važni događaji

uredi
  • 2009 Q1[14]
  • 2009 Q2[15]
  • 2009 Q3 na dalje: smanjenje potrošnje memorije, poboljšanje brzine[16]

Reference

uredi
  1. ^ Paul, Ryan (26. 3. 2009). „Ars Technica report on Unladen Swallow goals”. Arstechnica.com. Pristupljeno 19. 8. 2011. 
  2. ^ a b Winter, Collin; Yasskin, Jeffrey; Kleckner, Reid (17. 3. 2010). „PEP 3146 - Merging Unladen Swallow into CPython”. Python.org. 
  3. ^ „People working on Unladen Swallow”. Pristupljeno 29. 9. 2009. 
  4. ^ „Unladen Swallow project page”. Code.google.com. Pristupljeno 19. 8. 2011. 
  5. ^ Issue 9410: Add Unladen Swallow's optimizations to Python 3's pickle. - Python tracker
  6. ^ „Message on comp.lang.python”. Groups.google.com. Pristupljeno 19. 8. 2011. 
  7. ^ „Unladen Swallow | Google Groups”. Groups.google.com. Pristupljeno 19. 8. 2011. 
  8. ^ „reddit post by an Unladen committer”. Reddit.com. 24. 6. 2010. Pristupljeno 19. 8. 2011. 
  9. ^ Winter, Collin (8. 11. 2010). „Current status of Unladen-Swallow”. Google. 
  10. ^ „2009 Q4 release branch creation”. Code.google.com. 26. 1. 2010. Pristupljeno 19. 8. 2011. 
  11. ^ „Developers focus on merge into py3k-jit”. Groups.google.com. 13. 7. 2010. Pristupljeno 19. 8. 2011. 
  12. ^ „Unladen Swallow baseline”. Python.org. Pristupljeno 19. 8. 2011. 
  13. ^ Kleckner, Reid (26. 3. 2011). „Unladen Swallow Retrospective”. QINSB is not a Software Blog (qinsb.blogspot.com). 
  14. ^ „Unladen Swallow 2009Q1”. unladen-swallow, A faster implementation of Python. Pristupljeno 19. 10. 2012. 
  15. ^ „Unladen Swallow 2009Q2”. unladen-swallow, A faster implementation of Python. Pristupljeno 19. 10. 2012. 
  16. ^ „Unladen Swallow 2009Q3”. unladen-swallow, A faster implementation of Python. Pristupljeno 19. 10. 2012.