Den 20 februari 1991 publicerade Guido van Rossum den första versionen av programmeringssprÄket Python i gruppen alt.sources, ett arbete han inledde i december 1989 som en del av ett projekt för att skapa ett skriptsprÄk för att lösa systemadministrationsuppgifter i operativsystemet Amoeba, som skulle vara mer avancerat Àn C, men som till skillnad frÄn Bourne shell skulle ge bÀttre Ätkomst till systemanrop.
Namnet pÄ projektet valdes efter komedigruppen Monty Python. I den första versionen implementerades stöd för klasser med arv, undantagshantering, modulsystem och grundlÀggande typer som list, dict och str. Implementeringen av moduler och undantag lÄnas frÄn sprÄket Modula-3, medan kodningsstilen baserad pÄ indrag lÄnas frÄn sprÄket ABC, dÀr Guido tidigare varit involverad.
Vid skapandet av Python följde Guido följande principer:
- Principer som sparade tid vid utvecklingen:
- Att lÄna anvÀndbara idéer frÄn andra projekt.
- StrÀvan efter enkelhet, men utan överdriven förenkling (Einsteins princip "Allt ska förklaras sÄ enkelt som möjligt, men inte enklare").
- Att följa UNUX-filosofin, dÀr program implementerar en specifik funktionalitet men gör detta bra.
- Att inte oroa sig för prestanda, optimeringar kan lÀggas till vid behov nÀr de behövs.
- Att inte försöka kÀmpa emot det som redan finns, utan snarare att flyta med strömmen.
- Att undvika perfektionism, oftast rÀcker det med "tillrÀckligt bra".
- Ibland kan man ta genvÀgar, sÀrskilt om nÄgot kan göras senare.
- Ăvriga principer:
- Implementeringen bör inte vara knuten till en viss plattform. Vissa funktioner kanske inte alltid Àr tillgÀngliga, men grundlÀggande funktionalitet ska fungera överallt.
- Att inte överbelasta anvÀndarna med detaljer som maskinen kan hantera.
- Stödja och frÀmja plattformsoberoende anvÀndarkod utan att begrÀnsa tillgÄngen till plattformens funktioner och egenskaper.
- Stora, komplexa system bör erbjuda flera nivÄer för utbyggnad.
- Fel Ă€r inte dödliga och bör inte gĂ„ obemĂ€rkt förbi â anvĂ€ndarkoden bör ha möjlighet att fĂ„nga och hantera fel.
- Fel i anvÀndarkoden bör inte pÄverka den virtuella maskinens funktionalitet och fÄr inte leda till oförutsÀgbart beteende hos tolken eller krasch av processer.
KĂ€lla: opennet.ru
