Python fyller 30 år

Den 20. februar 1991 publiserte Guido van Rossum i alt.sources-gruppen den første utgivelsen av programmeringsspråket Python, som han hadde jobbet med siden desember 1989 som en del av et prosjekt for å lage et skriptspråk for å løse systemadministrasjonsproblemer i Amoeba-operativsystemet, som ville være av et høyere nivå, enn C, men i motsetning til Bourne-skallet, ville det gi mer praktisk tilgang til OS-systemanrop.

Navnet på prosjektet ble valgt til ære for komediegruppen Monty Python. Den første versjonen introduserte støtte for klasser med arv, unntakshåndtering, et modulsystem og de grunnleggende typene liste, dict og str. Implementeringen av moduler og unntak ble lånt fra Modula-3-språket, og den innrykkbaserte kodestilen fra ABC-språket, som Guido tidligere har bidratt til.

Da han opprettet Python, ble Guido veiledet av følgende prinsipper:

  • Prinsipper som sparte tid under utvikling:
    • Låne nyttige ideer fra andre prosjekter.
    • Jakten på enkelhet, men uten overforenkling (Einsheins prinsipp "Alt skal si så enkelt som mulig, men ikke enklere").
    • Følger UNUX-filosofien, i henhold til hvilke programmer implementerer en funksjonalitet, men gjør det bra.
    • Ikke bekymre deg for mye om ytelsen, optimaliseringer kan legges til etter behov ved behov.
    • Ikke prøv å bekjempe de rådende tingene, men gå med strømmen.
    • Unngå perfeksjonisme; vanligvis er nivået "godt nok" nok.
    • Noen ganger kan hjørner kuttes, spesielt hvis noe kan gjøres senere.
  • Andre prinsipper:
    • Implementeringen trenger ikke være plattformspesifikk. Noen funksjoner er kanskje ikke alltid tilgjengelige, men grunnleggende funksjonalitet bør fungere overalt.
    • Ikke belast brukere med deler som kan håndteres av en maskin.
    • Støtte og promotering av plattformuavhengig brukerkode, men uten å begrense tilgangen til mulighetene og funksjonene til plattformene.
    • Store komplekse systemer må gi flere utvidelsesnivåer.
    • Feil skal ikke være fatale og uoppdaget – brukerkode skal kunne fange opp og håndtere feil.
    • Feil i brukerkode skal ikke påvirke funksjonaliteten til den virtuelle maskinen og bør ikke føre til udefinert tolkatferd og prosesskrasj.

    Kilde: opennet.ru

Legg til en kommentar