Sidste Python-stop før inkompatibel version 3 tager over

Den sidste udgave i Pythons version to-linje kommer på gaden. Fremtiden ligger i den inkompatible version tre, som håndterer tråde og parallelisme meget bedre end tidligere.

I starten af juli kommer Python 2.7 på gaden. Det er den sidste udgivelse i version 2-serien, som nu skal afløses af Python 3, der kan byde på så mange ændringer, at der ikke er bagudkompabilitet med de tidligere versioner. Version 3 har allerede været ude i et par år.

Ændringerne betyder, at Pythons webmiljø Django bliver på version 2 lidt endnu.

»Der er en kæmpe kodebase bag Django, som nu skal porteres til Python 3,« fortæller Lau Bech Lauritzen fra Aalborg-firmaet Iola.

»Her i huset arbejder vi næsten udelukkende med Python. Med Python 3 har de sagt: hvis nu vi havde frie hænder, hvad ville vi så lave om, så Python bliver bedre og nemmere at arbejde med. Men det betyder, at der er en masse bagudkompatibilitet, som er røget i svinget. Så man kan ikke lave denne her hurtige og direkte opgradering til Python 3.«

Det er også et problem i forhold til Django, som er skrevet til Python 2. En migrering til den nye udgave står ikke højt på dagsorden hos Django, som hellere vil implementere nye funktioner.

»Jeg ved ikke hvad udsigterne er med Django hvad angår Python 3, og det er det, vi primært laver vores ting i. Så vi har ingen umiddelbare planer om at skifte til Python 3.«

Den manglende kompatibilitet kan ligefrem betyde, at der ikke er nok, der flytter med over i det nye miljø, der så kan lide døden på grund af manglende popularitet. Men man skal dog heller ikke male fanden på væggen, mener Lau Bech Lauritzen. Python-miljøet kan f.eks. byde på værktøjer, som kan nemme kode-migreringen.

Python 3 kommer med et nyt kørselsmiljø, som giver bedre understøttelse af tråde og parallelisering. Derudover er sproget forsimplet på visse punkter. Endeligt bliver strenge nu repræsenteret internt som Unicode, hvilket gør det nemmere at skabe applikationer som skal fungere på mange sprog.

»Grunden til, at vi har valgt Python og Django er, at det er hurtigere at bygge ting i. Det er et dynamisk, sprog, og det vil sige at man har utrolig frihed til at gøre lige som man vil. Og så der der meget lidt fyldkode som man ser i Java og C#,« siger Lau Bech Lauritzen.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (5)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Mikkel Høgh

Den første version af Python 3 kom i december 2008, så overskriften er nok en anelse vildledende. (Seneste version er 3.1.2, som udkom 21. marts i år).

Der vil givetvis være mange Python 2 projekter som ikke vil opgradere i mange år fremover, men det er ikke et problem at have flere versioner af Python installeret på samme system, så det vil være en lang, glidende overgang, hvilket vi som softwareudviklerere er helt fint tilfredse med :)

  • 0
  • 0
Per Sikker Hansen

Jeg synes det er rimeligt useriøst af så stort et projekt som Django, ikke at tage opgradering af kode alvorligt. Netop Python-miljøet har jo været så drevet af innovation og at gøre alting på den "rigtige" måde, at det for mig virker sært at et af de mest prominente projekter i miljøet vælger den vægelsindede indfaldsvinkel.

Det er denne slags konservatisme man forventer at se i C++ miljøet.

Ikke dermed sagt at det at fokusere på nye features snarere end at være med på noderne ikke kan have sin merit -- i rigtigt mange sammenhænge kan det være det mest fornuftige. Men i et miljø som det der er dannet omkring Python og dets idealer virker holdningen malplaceret.

  • 0
  • 0
Log ind eller Opret konto for at kommentere