Pyrex

Software screenshot:
Pyrex
Podrobnosti Software:
Verze: 0.9.9
Datum uploadu: 5 Jun 15
Vývojka: Greg Ewing
Licence: Volný
Popularita: 196

Rating: 2.5/5 (Total Votes: 4)

Pyrex je jazyk určený pro tvorbu Python rozšiřující moduly napsané v C kód.
Je navržen tak, aby překlenout propast mezi pěkné, vysoké úrovni a snadno použitelný svět Python a chaotický, low-level svět C.
U základních typů, jako jsou čísla a řetězce to není tak špatné, ale nic víc propracované a vy jste do vychystávání Python objekty od sebe pomocí / C volání API v Pythonu, který vyžaduje, abyste byli pečlivý o zachování referenčních počty, kontrola chyb na každém kroku a pro čištění správně, pokud se něco pokazí

Co je nového v této verzi:.

  • Některé funkce pro propojení s C ++ kódu byly zavedeny v této verzi.
  • Pyrex ne delší místa chytil výjimky do stavu závitu. Tím je zajištěno, že výjimky a tracebacks nemají unikat kromě doložky, která je chytil, pokud děláte něco, co explicitně udržovat je.
  • V současné době, argument funkce Pythonu, která je deklarována jako typ rozšíření bude ve výchozím nastavení, je povoleno získat hodnotu None; aby se tomu zabránilo, je nutné kvalifikovat prohlášení argumentu za "ne Žádný".
  • Nyní je možné definovat a typ rozšíření s atributy Python, který se nepodílí na cyklickém odvoz odpadu, pomocí nové nogc možnost.
  • size_t je nyní vestavěný typu a je typ vrácen provozovatelem sizeof. Také, velikosti size_t a Py_ssize_t se nyní předpokládá, že někde mezi dlouhé a long.
  • Operace mezi dvěma typy int stejné hodnoty nyní vrátit nepodepsaný výsledek, pokud jeden z operandů je unsigned; pokud se řady liší, výsledek má stejný typ jako širší-zařadil operand. Myslím si, že to je nejlepší sbližování právních předpisů ANSI C, který je možné bez znalosti přesné velikosti typu.
  • PyString_InternFromString je nyní vystaven pod názvem cintern spíše než intern, protože to není kompletní náhrada pro funkci Python interním (neumí zacházet řetězce, které obsahují null bajty).
  • Zkontrolujte, zda velikost, který byl dříve vygenerován při importu typ rozšíření byla zakázána v současné době, dokud jsem si vymyslet něco lepšího. To bylo generování příliš mnoho falešných poplachů, například z různých verzích numpy.
  • konvence možnost __fastcall volání je nyní podporována. Také, Pyrex již předpokládá, že __cdecl je výchozí konvence volání. Chcete-li být považována za slučitelnou, dva typy funkce musí být buď prohlášeny za stejným konvence volání, nebo obojí, musí nechat nespecifikované.
  • Jak jsem již ohrožuje nějakou dobu, s použitím __new__ jako název metody inicializaci typu rozšíření se stalo spíše než chyba jen varování. V některých budoucích verzích, __new__ bude znovu objevit s více Python-jako sémantiky.

Omezení :

nic nalezeno

Podobný software

Metalua
Metalua

13 May 15

LuaJIT
LuaJIT

28 Sep 15

Pint
Pint

13 Apr 15

Rubinius
Rubinius

10 Feb 16

Ostatní software developer Greg Ewing

Pyrex
Pyrex

3 Jun 15

Komentáře k Pyrex

Komentáře nebyl nalezen
Přidat komentář
Zapnout obrázky!