Shed Skin

Software screenshot:
Shed Skin
Software detaljer:
Version: 0.9.1
Upload dato: 15 Apr 15
Udvikler: Mark Dufour
Licens: Gratis
Popularitet: 26

Rating: 4.0/5 (Total Votes: 2)

Shed Skin er en eksperimentel Python-til-C ++ compiler. Shed Skin accepterer rene Python-programmer, og genererer optimeret C ++ kode. Dette betyder, at i kombination med en C ++ compiler, giver det mulighed for translation af Python programmer i højeffektive maskine sprog. For et sæt af 16 ikke-trivielle testprogrammer, målinger viser en typisk hastighedsforøgelse på 2-40 i løbet af Psyco, omkring 12 i gennemsnit, og 2-220 løbet CPython, omkring 45 i gennemsnit (se afsnit 5 i mit speciale på højre ). Shed Skin udgange også kommenteret kildekode.
Den høje ydeevne og elegant tilgang Shed Skin (det er kun 6000 linjer!) Kommer til en pris. For det første i øjeblikket kun accepterer programmer, der statisk indtastet. Det betyder blot, at variabler kun kan nogensinde have en enkelt type. Så fx a = 1; a = '1' er ikke tilladt. Naturligvis kan en enkelt type være abstrakt eller generisk (som i C ++), således at f.eks A = A (); a = B (), hvor A og B har en fælles base klasse, er tilladt.
 
For det andet, Python programmer kan ikke på nuværende tidspunkt frit bruge Python standard biblioteket. Der er dog nogle fælles import understøttes (se * _. Py), og mange andre kan nemt tilføjes. Problemet er praktisk, da det i teorien er muligt at skabe bindinger for de fleste bibliotekets moduler. En simpel work-around kan være at kun kompilere kritiske dele af et Python program, og kommunikere med den gennem fx filer og standard ind- og udgang. På denne måde kan den "vigtigste" program bruge den fulde Python dynamik og standard bibliotek og hele programmet er skrevet i ren Python.
 
Shed Skin er stadig alfa software, og der er nogle andre mindre, for det meste midlertidige, begrænsninger. Læs afsnittet Begrænsninger omhyggeligt, før du prøver at kompilere et program. Det eneste, jeg beder til gengæld for at gøre software tilgængelig under GPL, er, at du sender mig en e-mail, når du støder på et problem, som ikke er nævnt blandt disse begrænsninger. Dette er den hurtigste måde at få din program understøttes, da jeg typisk ikke løse problemer, jeg ikke kender. Vær også lade mig vide, hvis du vil have mig til at gennemføre visse bibliotekskald

Hvad er nyt i denne udgivelse:.

  • Skalerbarhed blev igen stærkt forbedret.
  • Ydelse fil I / O og komplekse tal blev stærkt forbedret.
  • Tre nye moduler er understøttet.
  • Seks nye eksempel programmer tilføjet.
  • Der var mange andre fejlrettelser og forbedringer.

Hvad er nyt i version 0.8:

  • Support blev tilføjet til & quot; struct & quot; og & quot; matrix & quot; moduler.
  • Tre nye eksempler blev tilsat, for i alt 57.
  • C64 eksempel blev opdateret, og er nu mere end 3.000 linjer (sloccount).
  • En mulighed blev tilføjet for at vise undtagelse tracebacks (shedskin -x).
  • Mange bugs blev fastsat.

Hvad er nyt i version 0.1:.

  • Forbedret understøttelse af "os" (UNIX)
  • Tilføjelsen af ​​en JPEG-dekoder (1200 linjer) og nogle andre programmer til sæt eksempel programmer. Udvidelsesmodul rettelser.
  • Forbedret kompiler-flag under OS X.
  • En vigtig type inferens fix.
  • Forbedret variable overbelastning.
  • Casting forbedringer.
  • Rettelser til setslice og delslice hjørne tilfælde.
  • xrange returnerer et xrange objekt, ikke iterator.
  • Der er flere mindre fejlrettelser.

Hvad er nyt i version 0.0.30:.

  • Brugerdefineret support i udvidelsesmoduler
  • Meget hurtig sæt gennemførelse (FFAO).
  • Complex nummer support.
  • Mange forbedringer string formatering.
  • Ingen kort til NULL i stedet for 0, og udskriver som 'Ingen'.
  • re.match_object.group accepterer flere argumenter.
  • Casting forbedringer.
  • Arv fra andre end Undtagelse builtin undtagelser.
  • hash Ingen bør arbejde nu.
  • En vigtig type inferens fix, og mange andre fejlrettelser.

Hvad er nyt i version 0.0.29:.

  • datetime og ConfigParser støtte
  • staticmethod og ejendom dekoratører.
  • FreeBSD, OpenSolaris og 64-bit support.
  • GCC 4.3 rettelser.
  • Støtte til kortlægning taster ('% (nøgle) x ..'% some_dict).
  • Forbedringer af import mekanismen. __init__ er meget mindre af et særtilfælde nu.
  • Mange rettelser til kald forfader metoder (f.eks Parent .__ init __).
  • Alle eksempel programmer nu kompilere som udvidelsesmoduler.
  • Der er mange fejlrettelser.

Lignende software

GNU Cobol
GNU Cobol

17 Feb 15

Avian
Avian

20 Feb 15

BAIK
BAIK

11 May 15

Kommentarer til Shed Skin

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!