Abo
  • Services:
Anzeige
Google verarbeitet Python in Go.
Google verarbeitet Python in Go. (Bild: Google)

Grumpy: Google erstellt Python-Runtime in Go

Google verarbeitet Python in Go.
Google verarbeitet Python in Go. (Bild: Google)

Mit Grumpy hat Google eine experimentelle Laufzeitumgebung für Python in der Programmiersprache Go erstellt. Begründet wird das mit der Unzufriedenheit über verfügbare Alternativen. Grumpy ist zudem ein Transpiler, kein Interpreter.

Eigenen Angabe zufolge nutzt Google "Millionen Zeilen Python-Code". Das umfasse vor allem die Frontend-Server von Youtube sowie die APIs für den Videostreamingdienst. Insbesondere mit der Standardimplementierung CPython sei es für das Team allerdings sehr schwierig, nebenläufige Programme zu verfassen, die sehr leistungsfähig arbeiten. In Anbetracht mangelnder Alternativen hat das Team deshalb eine eigene Laufzeitumgebung für Python 2.7 in Go erstellt.

Anzeige

Das entstandene Projekt heißt Grumpy und steht unter der Apache-Lizenz als Open Source auf Github zur Verfügung. Die Entscheidung für die Sprache Go zur Umsetzung einer eigenen Python-Laufzeitumgebung sei für die Beteiligten eine "offensichtliche" Wahl gewesen. Immerhin passten die typischen Merkmale von Go gut zu dem Anwendungsfall von Youtube und die Type-Reflection der Go-Laufzeitumgebung ermögliche eine erstklassige Sprachinteroperabilität.

Keine C-Module, dafür einfache Go-Integration

Ziel von Grumpy sei es, einen vollständigen Ersatz der Laufzeitumgebung für reine Python-Projekte bereitstellen zu können. Die dabei wohl größte Einschränkung im Vergleich zu CPython ist allerdings, dass Grumpy auf die Unterstützung für C-Erweiterungen verzichtet. Existierende C-Module für Python können mit Grumpy also nicht genutzt werden, dem Team habe das aber eine große Flexibilität beim Design der Software gegeben.

So könne Grumpy auf einen Global Interpreter Lock verzichten und das System verwende den Garbage Collector von Go für die Verwaltung der Objektlebensdauer statt einer Referenzzählung. Darüber hinaus ist Grumpy explizit kein Python-Interpreter. Stattdessen wird der Python-Code mit Hilfe eines Transpilers in Go übersetzt. Dazu heißt es: "Grumpy-Programme werden kompiliert und verlinkt wie jedes andere Go-Programm". Python-Code, der für die Verwendung mit Grumpy vorgesehen sei, könne damit sämtliche verfügbaren Go-Pakete importieren und diese weiterverwenden.

Noch wird das Projekt als Alpha-Software beschrieben, so dass bei einem Einsatz noch mit vielen Problemen zu rechnen ist. Das Team fordert Interessierte aber dazu auf, sich an der Entwicklung zu beteiligen. So könne das Team die noch ausstehenden Arbeiten besser priorisieren.


eye home zur Startseite
danielcale 10. Jan 2017

Aber in der tat, der ewigdauernde Split zwischen 2 und 3 schreckt ab. Ich glaube nicht...

RicoBrassers 06. Jan 2017

Wo nervt Google denn? Also ich werde nicht von Google genervt und freue mich, dass...

deadeye 06. Jan 2017

Ne, bezahlt keiner und einen Gewinn hat man dadurch leider auch nicht. Ich denke mal...

pythoneer 05. Jan 2017

Ich weiß nicht ob du eine falsche Vorstellung von dem Wort "Implizit" hast aber du...



Anzeige

Stellenmarkt
  1. SICK AG, Waldkirch bei Freiburg im Breisgau
  2. Daimler AG, Stuttgart-Vaihingen
  3. Hessischer Rundfunk Anstalt des öffentlichen Rechts, Frankfurt am Main
  4. ADAC IT Service GmbH, München


Anzeige
Blu-ray-Angebote
  1. 29,99€ (Vorbesteller-Preisgarantie)
  2. (u. a. The Revenant 7,97€, James Bond Spectre 7,97€, Der Marsianer 7,97€)
  3. inklusive Verlosung einer großen Dinosaurier-Figur

Folgen Sie uns
       


  1. Mobilfunk

    Leistungsfähigkeit der 5G-Luftschnittstelle wird überschätzt

  2. Drogenhandel

    Weltweit größter Darknet-Marktplatz Alphabay ausgehoben

  3. Xcom-2-Erweiterung angespielt

    Untote und unbegrenzte Schussfreigabe

  4. Niantic

    Das erste legendäre Monster schlüpft demnächst in Pokémon Go

  5. Bundestrojaner

    BKA will bald Messengerdienste hacken können

  6. IETF

    DNS wird sicher, aber erst später

  7. Dokumentation zum Tor-Netzwerk

    Unaufgeregte Töne inmitten des Geschreis

  8. Patentklage

    Qualcomm will iPhone-Importstopp in Deutschland

  9. Telekom

    Wie viele Bundesfördermittel gehen ins Vectoring?

  10. IETF

    Wie TLS abgehört werden könnte



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Kryptowährungen: Bitcoin steht vor grundlegenden Änderungen
Kryptowährungen
Bitcoin steht vor grundlegenden Änderungen
  1. Link11 DDoS-Angriffe nehmen wegen IoT-Botnetzen weiter zu
  2. Ethereum-Boom vorbei Viele gebrauchte AMD-Grafikkarten im Angebot
  3. Kryptowährung Bitcoin notiert auf neuem Rekordhoch

Indiegames Rundschau: Meisterdiebe, Anti- und Arcadehelden
Indiegames Rundschau
Meisterdiebe, Anti- und Arcadehelden
  1. Jump So was wie Netflix für Indiegames
  2. Indiegames-Rundschau Weltraumabenteuer und Strandurlaub
  3. Indiegames-Rundschau Familienflüche, Albträume und Nostalgie

IETF Webpackage: Wie das Offline-Internet auf SD-Karte kommen könnte
IETF Webpackage
Wie das Offline-Internet auf SD-Karte kommen könnte
  1. IETF 5G braucht das Internet - auch ohne Internet
  2. IETF DNS über HTTPS ist besser als DNS

  1. Re: Gibt nur 4 sinnvolle Zahlungsarten...

    My1 | 20:19

  2. Re: Ich kann Vectoring nicht mehr hören!

    /mecki78 | 20:17

  3. Re: Meine erste Begegnung mit SÜ

    My1 | 20:16

  4. Re: Der Telekom ist das egal

    nille02 | 20:13

  5. Re: Anbieter kassieren weiter

    robinx999 | 20:11


  1. 19:00

  2. 18:52

  3. 18:38

  4. 18:30

  5. 17:31

  6. 17:19

  7. 16:34

  8. 15:44


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel