Programmeertalen: waarom Python niet populair is geworden op mobiel of in de browser. Guido van Rossum, de maker van de immens populaire programmeertaal Python, heeft zijn mening gegeven over de taal voor de browser, mobiele apparaten en opkomende rivalen zoals Julia. 

Van Rossum, de voormalige “welwillende dictator voor het leven” van Python, werkt sinds november bij Microsoft als een vooraanstaand ingenieur en hielp de softwaregigant terug te geven aan de Python-gemeenschap die hebben bijgedragen aan het maken van zijn creatie tot een van de meest populaire programmeertalen. dankzij de opkomst van machine learning en data science. 

Hij heeft de afgelopen weken een paar aankondigingen gedaan in lijn met de PyCon 2021-conferentie, waaronder dat er een plan is om de snelheid van CPython , de meest gebruikte implementatie van de taal , te verdubbelen. Microsoft heeft een klein Python-team onder leiding van Van Rossum gefinancierd om “de leiding te nemen over prestatieverbeteringen” in de geïnterpreteerde taal. 

Maar de ontwikkeling van mobiele apps is een van de belangrijkste groeigebieden waar Python geen grip op heeft gekregen , ondanks het feit dat het domineert in machine learning met bibliotheken zoals NumPy en Google’s TensorFlow, evenals automatisering van back-endservices. Python is niet bepaald ingepakt in high-end hardware, maar dat is waar het naar toe wordt aangetrokken en het is weggelaten uit mobiel en de browser, zelfs als het populair is op de backend van deze services, zei hij.

Waarom? Python slurpt gewoon te veel geheugen en energie uit hardware, zei hij. Om soortgelijke redenen zei hij dat Python waarschijnlijk geen toekomst heeft in de browser, ondanks WebAssembly, een standaard die helpt om krachtigere applicaties op websites te maken.    

De ontwikkeling van mobiele apps in Python is “een beetje een pijnpunt”, zei van Rossum in een recente video-Q&A voor Microsoft Reactor.  

“Het zou mooi zijn als mobiele apps in Python zouden kunnen worden geschreven. Er werken eigenlijk een paar mensen aan, maar CPython heeft 30 jaar geschiedenis waarin het is gebouwd voor een omgeving die een werkstation, een desktop of een server is en het verwacht dat soort omgeving en de gebruikers verwachten dat soort omgeving, “zei hij. 

“De mensen die erin geslaagd zijn CPython te cross-compileren om op een Android-tablet of zelfs op iOS te draaien, merken dat het veel bronnen opslokt”, zei hij. “Vergeleken met wat de mobiele besturingssystemen verwachten, is Python groot en traag. Het gebruikt veel batterijlading, dus als je in Python codeert, zou je batterij waarschijnlijk heel snel leegraken en snel te weinig geheugen hebben”, zegt hij zei.  

Maar Python is populair voor backend-webservices, hoewel hij zei dat JavaScript de frontend-webontwikkeling domineert. In toenemende mate wordt Microsoft’s JavaScript superset de schrijfmachine wordt gebruikt door web-ontwikkelaars

“Python is een vrij populaire taal [aan de achterkant]. Bij Google werkte ik aan projecten die min of meer op Python waren gebouwd, hoewel de meeste Google-dingen dat niet waren. Bij Dropbox is de hele Dropbox-server op Python gebouwd. Aan de andere kant hand, als je kijkt naar wat er in de browser draait, dat is de wereld van JavaScript en tenzij het naar JavaScript vertaalt, kun je het niet uitvoeren, “zei van Rossum. 

“Ik vind het niet erg dat zoveel verschillende talen verschillende doelen moeten hebben. Ik bedoel, niemand vraagt ​​Rust wanneer je Rust in de browser kunt schrijven; dat lijkt tenminste ook geen nuttig soort doelwit voor Rust. Python zou zich moeten concentreren op de toepassingsgebieden waar het goed is en voor het web dat de backend is en voor wetenschappelijke gegevensverwerking. “

De welwillende dictator van Python had ook een paar woorden voor mogelijke rivaliserende taal in wetenschappelijk computergebruik en machine learning, Julia , een taal die aan populariteit wint maar niet de rijkdom aan machine-learning en datawetenschappelijke bibliotheken heeft die Python heeft. 

Ontwikkelaars vragen zich af of Julia een nichetaal zal blijven of het potentieel heeft om de hoogten van Python te bereiken. Van Rossum zei dat Julia, die voortkwam uit MIT, een “interessante kijk op iets Python-achtig” was.

“[Julia] heeft genoeg details die erg lijken op Python dat als je je realiseert, oh, maar al het indexeren één bereik is dat inclusief is in plaats van exclusief, je denkt arrgggh!”
“Niemand zou ooit op dezelfde dag moeten proberen te coderen in Julia en Python,” grapte hij, en beschreef het als een “nichetaal” in vergelijking met Python. 

Maar hij voegde eraan toe: “Als je in die niche zit, is het superieur omdat de compiler je code optimaliseert op een manier die Python waarschijnlijk nooit zal doen. Aan de andere kant is het veel beperkter op andere gebieden en ik zou dat niet verwachten iedereen gaat ooit een webserver in Julia schrijven en er veel kilometers mee maken. ” Van Rossum is ook fan van Rust, maar hij vindt dat het door Google gemaakte Go de meest “Pythonische” van alle nieuwe talen is.