Shed Skin

Screenshot der Software:
Shed Skin
Softwarebeschreibung:
Version: 0.9.1
Upload-Datum: 15 Apr 15
Entwickler: Mark Dufour
Lizenz: Frei
Popularität: 74

Rating: 3.7/5 (Total Votes: 3)

Shed Haut ist eine experimentelle Python-to-C ++ Compiler. Shed Haut nimmt reine Python-Programme und erzeugt C ++ Code optimiert. Das bedeutet, dass, in Kombination mit einem C ++ Compiler, erlaubt es für die Übersetzung von Python-Programmen in hocheffiziente Maschinensprache. Für eine Gruppe von 16 nicht-triviale Testprogrammen, Messungen zeigen eine typische Beschleunigung von 2-40 über Psyco, etwa 12 im Durchschnitt und 2-220 über CPython, etwa 45 im Durchschnitt (siehe Abschnitt 5 der meines Masterarbeit an der rechten ). Shed Haut gibt auch kommentierten Quellcode.
Die hohe Leistung und eleganten Ansatz Shed Haut (es ist nur 6000 Zeilen!) Haben ihren Preis. Erstens ist es derzeit nur akzeptiert Programme, die statisch typisiert werden. Dies bedeutet, dass Variablen kann immer nur eine einzige Art haben. So z a = 1; a = '1' ist nicht erlaubt. Natürlich kann eine einzelne Art abstrakte oder generische (wie in C ++) ist, so dass zB a = A (); a = B (), wobei A und B haben eine gemeinsame Basisklasse erlaubt.
 
Zweitens, Python-Programme können derzeit nicht frei verwenden die Python-Standardbibliothek. Allerdings sind einige gemeinsame Einfuhr unterstützt (siehe * _. Py), und viele andere können einfach hinzugefügt werden. Das Problem ist ein praktischer Art, denn in der Theorie ist es möglich, Bindungen für die meisten Bibliotheksmodule erstellen. Eine einfache Problemumgehung kann nur kritische Teile eines Python-Programm zusammenzustellen und mit ihm zu kommunizieren, durch zB Dateien und Standard-Ein- und Ausgang. Auf diese Weise können die "main" Programm die volle Dynamik und Python-Standardbibliothek verwenden, und das ganze Programm ist in reinem Python geschrieben.
 
Shed Haut ist immer noch Alpha-Software, und es gibt einige andere kleinere, meist zeitlich begrenzt, Einschränkungen. Bitte lesen Sie die Einschränkungen Abschnitt sorgfältig, bevor Sie versuchen, ein Programm zu kompilieren. Das einzige, was ich fragen, als Gegenleistung für die die Software unter der GPL, ist, dass Sie mir eine E-Mail, wenn ein Problem auftritt, das nicht unter diesen Einschränkungen aufgeführt. Dies ist der schnellste Weg zu bekommen Sie Ihr Programm nicht unterstützt, da ich in der Regel nicht die Probleme, die ich nicht kennen fix. Bitte lassen Sie mich wissen, wenn Sie möchten, dass ich bestimmte Bibliotheksaufrufe zu implementieren

Was ist neu in dieser Pressemitteilung:.

  • Skalierbarkeit nochmals deutlich verbessert.
  • Leistung von Datei-I / O und komplexe Zahlen wurde stark verbessert.
  • Drei neue Module werden unterstützt.
  • Sechs neue Beispielprogramme wurden hinzugefügt.
  • Es gab viele andere Bugfixes und Verbesserungen.

Was ist neu in Version 0.8:

  • Unterstützung wurde hinzugefügt der & quot; struct & quot; und & quot; Array & quot; Module.
  • Drei neue Beispiele wurden aufgenommen, für insgesamt 57.
  • Der C64 Beispiel wurde aktualisiert und ist nun mehr als 3.000 Zeilen (sloccount).
  • Eine Option wurde hinzugefügt, um Ausnahme Tracebacks angezeigt (shedskin -x).
  • Viele Fehler wurden behoben.

Was ist neu in Version 0.1:.

  • Verbesserte Unterstützung für 'os' (UNIX)
  • Die Zugabe einer JPEG-Decodierer (1200 Zeilen) und einigen anderen Programmen auf den Satz von Beispielprogramme. Erweiterungsmodul Fixes.
  • Verbesserte Compiler-Flags unter OS X.
  • Ein wichtiger Typinferenz fix.
  • Verbesserte variable Überlastung.
  • Casting Verbesserungen.
  • Fixes für SetSlice und delslice Grenzfälle.
  • xrange gibt ein xrange Objekt, nicht Iterator.
  • Es gibt einige kleinere Bugfixes.

Was ist neu in Version 0.0.30:.

  • Benutzerdefinierte Klassen Unterstützung bei Erweiterungsmodule
  • Sehr schnelles Set-Implementierung (FFAO).
  • Komplexe Zahl Support.
  • Viele String Formatierung Verbesserungen.
  • Keine Karten anstelle von 0 NULL, und druckt als 'Keine'.
  • re.match_object.group nimmt mehrere Argumente.
  • Casting Verbesserungen.
  • Die Vererbung von eingebauten Ausnahme Ausnahme Ausnahmen.
  • Hashing Keiner sollte jetzt funktionieren.
  • Ein wichtiger Typinferenz fix, und viele andere Bugfixes.

Was ist neu in Version 0.0.29:.

  • Datetime und ConfigParser Unterstützung
  • static und Eigentum Dekorateure.
  • FreeBSD, Opensolaris und 64-Bit-Unterstützung.
  • GCC 4.3 behoben.
  • Unterstützung für die Zuordnung von Tasten ('% (key) x .. "% some_dict).
  • Verbesserungen der Importmechanismus. __init__ ist viel weniger von einem speziellen Fall ist.
  • Viele Fixes für den Aufruf Vorfahren Methoden (zB Eltern .__ init __).
  • Alle Beispielprogramme jetzt als Erweiterungsmodule zu kompilieren.
  • Es gibt viele Bugfixes.

Ähnliche Software

GNU Binutils
GNU Binutils

17 Aug 18

SlimIt
SlimIt

14 Apr 15

Java Gui Builder
Java Gui Builder

3 Jun 15

Cython
Cython

27 Sep 15

Kommentare zu Shed Skin

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!