Pyrex

Скриншот программы:
Pyrex
Детали программы:
Версия: 0.9.9
Дата загрузки: 5 Jun 15
Разработчик: Greg Ewing
Тип распространения: Бесплатная
Популярность: 196

Rating: 2.5/5 (Total Votes: 4)

Pyrex это язык, разработанный для создания Python модулей расширения, написанные на C кода.
Она разработана, чтобы преодолеть разрыв между красивым, высоким уровнем, легкий в использовании мир Python и грязный, низкого уровня мир С
Для основных типов, таких как числа и строки, это не слишком плохо, но ничего более сложной и вы в выборе объектов Python помимо используя / C API вызовы Python, который требует, чтобы вы тщательно о сохранении количество ссылок, проверка на наличие ошибок на каждом шагу и очистки должным образом, если что-нибудь пойдет не так

Что нового В этом выпуске:.

  • Некоторые особенности сопряжения с C ++ кода были введены в этом выпуске.
  • Pyrex больше не места поймали исключения в состояние потока. Это гарантирует, что исключения и tracebacks не вытекать из кроме оговоркой, что их поймали, если вы делаете что-то явно сохранить их.
  • В настоящее время, аргумент функции Python, который объявлен как тип расширения, по умолчанию, будет разрешено получить значение None; чтобы предотвратить это, необходимо квалифицировать заявление аргумент с "None" не.
  • Теперь можно определить и тип расширения с атрибутами Python, что не участвует в циклическом сбора мусора, используя новую опцию nogc.
  • size_t теперь встроенный в тип и тип возвращаемого оператором SizeOf. Кроме того, размеры size_t и Py_ssize_t теперь считается где-то между длиной и длиной пор.
  • Операции между двумя типами Int одного ранга теперь возвращают без знака результата, если любой из операндов без знака; Если ранги отличаются, результат имеет тот же тип, как шире-место операнда. Я думаю, что это является наилучшим приближением правил ANSI C, что можно, не зная точные размеры типов.
  • PyString_InternFromString теперь подвергается под названием cintern, а не стажер, потому что это не полная замена для функции Python стажера (он не может справиться строки, содержащие нулевые байты).
  • Проверка размера, который был ранее генерируется при импорте тип расширения была отключена на время, пока я не могу думать о чем-то лучше. Было генерации слишком много ложных срабатываний, например, из различных версий NumPy.
  • Опция конвенции __fastcall вызова теперь поддерживается. Не Кроме того, Pyrex больше не предполагает, что это соглашение __cdecl по умолчанию вызова. Чтобы считаться совместимыми, два типа функций должны либо быть объявлены с той же вызывающей конвенции, или оба должны оставить его не определен.
  • Как я уже угрожает в течение некоторого времени, используя __new__ в качестве имени метода инициализации типа расширения стала ошибка, а не просто предупреждение. В будущем релизе, __new__ повторно выйти с более Python, как семантики.

Ограничения

ничего не найдено

Похожие программы

Bee
Bee

13 May 15

asm.js
asm.js

12 Apr 15

Rock
Rock

13 Apr 15

Другие программы разработчика Greg Ewing

Pyrex
Pyrex

3 Jun 15

Комментарии к Pyrex

Комментарии не найдены
добавить комментарий
Включите картинки!