Pyrex (язык программирования) - Pyrex (programming language)

Pyrex
Разработчики)Грег Юинг
изначальный выпуск3 апреля 2002 г.; 18 лет назад (2002-04-03)[1]
Стабильный выпуск
0.9.9 / 12 апреля 2010 г.; 10 лет назад (2010-04-12)
Написано вPython, C
Операционная системаКроссплатформенность
ТипЯзык программирования
Интернет сайтwww.cosc.Кентербери.ac.nz/ ~ greg/ питон/ Pyrex/

Pyrex это язык программирования разработан, чтобы помочь в создании Python модули. Его синтаксис очень близок к Python. Цель состоит в том, чтобы упростить программистам Python написание кода поддержки, отличного от Python, обычно необходимого для взаимодействия модулей на языке, максимально приближенном к Python.

Ограничение Python

Сам Python предоставляет только C API писать модули расширения, что позволяет писать функции и типы данных в C.[обсудить] Затем к ним можно будет получить доступ из Python. Таким образом, также возможно обернуть функции и типы данных существующих C библиотеки как объекты Python и, следовательно, сделать их доступными для Python.

Прочие инструменты

Есть такие инструменты, как SWIG или библиотека внешних функций Python ctypes который можно использовать для этой задачи, не требуя большого количества дополнительного кода, но это ограничивается доступностью внешней библиотеки в коде Python. Если требуется корректировка API, связующий код снова придется писать вручную. Вот где вам подходит Pyrex.

Способности Pyrex

Pyrex позволяет пользователю писать модули расширения на языке, подобном Python, который может напрямую обращаться к внешнему коду C. Сходство синтаксиса Pyrex с синтаксисом Python позволяет легко писать модули Python, поскольку нет необходимости изучать другой язык (например, C или C ++ ), и, возможно, нет необходимости писать какой-либо клеевой код. Все, что нужно, это указать имя файлов C-header, перечисления, типы данных и функции, к которым требуется доступ в модуле. Затем их просто используют, как если бы они были объектами Python. Компилятор Pyrex автоматически сгенерирует необходимый связующий код и скомпилирует код Pyrex в рабочий модуль Python.

Смотрите также

  • Cython, производное пирекса.

использованная литература

  1. ^ greg в cosc ​​(3 апреля 2002 г.). «ИНС: Pyrex - язык для написания модулей расширения Python». Получено 24 февраля, 2014.

внешние ссылки