Guido van Rossum publikoval 20. februára 1991 v skupine alt.sources prvé vydanie programovacieho jazyka Python, na ktorom pracoval od decembra 1989 v rámci projektu vytvorenia skriptovacieho jazyka na riešenie problémov so správou systému v r. operačný systém Amoeba, ktorý by bol na vyššej úrovni ako C, ale na rozdiel od Bourne shellu by poskytoval pohodlnejší prístup k systémovým volaniam OS.
Názov projektu bol vybraný na počesť komediálnej skupiny Monty Python. Prvá verzia zaviedla podporu tried s dedičnosťou, spracovaním výnimiek, modulovým systémom a zoznamom základných typov, dict a str. Implementácia modulov a výnimiek bola prevzatá z jazyka Modula-3 a štýl kódovania založený na odsadení z jazyka ABC, ku ktorému predtým prispel Guido.
Pri vytváraní Pythonu sa Guido riadil nasledujúcimi princípmi:
- Princípy, ktoré šetrili čas pri vývoji:
- Požičiavanie užitočných nápadov z iných projektov.
- Snaha o jednoduchosť, ale bez prílišného zjednodušovania (Einsheinova zásada „Všetko by malo byť povedané čo najjednoduchšie, ale nie jednoduchšie“).
- Podľa filozofie UNUX, podľa ktorej programy implementujú jednu funkcionalitu, ale robia ju dobre.
- O výkon sa príliš nestarajte, v prípade potreby je možné podľa potreby pridať optimalizácie.
- Nesnažte sa bojovať s prevládajúcimi vecami, ale choďte s prúdom.
- Vyhnite sa perfekcionizmu, zvyčajne stačí úroveň „dosť dobrý“.
- Niekedy môžu byť rohy rezané, najmä ak sa dá niečo urobiť neskôr.
- Ďalšie princípy:
- Implementácia nemusí byť špecifická pre platformu. Niektoré funkcie nemusia byť vždy dostupné, ale základné funkcie by mali fungovať všade.
- Nezaťažujte používateľov dielmi, s ktorými môže stroj manipulovať.
- Podpora a propagácia užívateľského kódu nezávislého od platformy, ale bez obmedzenia prístupu k možnostiam a funkciám platforiem.
- Veľké komplexné systémy musia poskytovať viacero úrovní rozšírenia.
- Chyby by nemali byť fatálne a nezistené – používateľský kód by mal byť schopný zachytiť a spracovať chyby.
- Chyby v používateľskom kóde by nemali mať vplyv na funkčnosť virtuálneho počítača a nemali by viesť k nedefinovanému správaniu tlmočníka a zlyhaniam procesov.
Zdroj: opennet.ru