Pyrex

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

Rating: 4.0/5 (Total Votes: 2)

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, как семантики.

Ограничения

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

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

LuaJIT
LuaJIT

28 Sep 15

Free Pascal
Free Pascal

13 May 15

ToffeeScript
ToffeeScript

13 Apr 15

tinypy
tinypy

6 Jun 15

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

Pyrex
Pyrex

3 Jun 15

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

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