Shedskin

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Shed Skin
Автор Mark Dufour
Написана на Python, C++
Операционная система Cross-platform: Linux, Mac OS X, Windows
Языки интерфейса Python
Лицензия GPL 3, BSD
Сайт shedskin.github.io

Shed Skin — проект 2005 года, транслятор программ, написанных на подмножестве языка Python, в оптимизированное C++ представление. Может транслировать только статические типы данных приложений на Python в код C++. Может генерировать как самостоятельные приложения, так и модули расширения, которые могут быть импортированы в большие приложения на языке Python[1] .

Кроме ограничения статической типизации, не все модули стандартной библиотеки Python поддерживаются транслятором. В настоящий момент поддерживаются порядка 25 модулей, таких как random и re[2]. Также реализованы не все особенности языка Python, например, не поддерживаются вложенные функции и переменное количество аргументов функций. Не поддерживает Unicode.

Shed Skin — проект с открытым исходным кодом, опубликован под лицензиями GPL и BSD, свой вклад в развитие проекта привнесли Francois Boutines, Jason Ye, Brent Pedersen, Joris van Zwieten, Thomas Spura, Paul Boddie и множество других участников.

Важным достоинством проекта, является возможность быстрой разработки программ на высокоуровневом языке программирования (Python), с последующей трансляцией кода в C++, что после компилирования, позволяет увеличить быстродействие созданных приложений. Главное отличие от проекта PyPy состоит в том, что Shed Skin позволяет экономить оперативную память.

Для набора из 75 нетривиальных испытательных программ[3], измерения показали ускорение выполнения программ от 2 до 200 раз, в сравнении с CPython.

См. также

Примечания

  1. Master Thesis Mark Dufour, "Shed Skin. An Optimizing Python-to-C++ Compiler" Архивная копия от 5 июля 2007 на Wayback Machine, April 19, 2006
  2. Shedskin 0.9 release notes. Дата обращения: 14 октября 2018. Архивировано 10 декабря 2017 года.
  3. http://code.google.com/p/shedskin/downloads/list Архивная копия от 6 декабря 2011 на Wayback Machine Shed Skin Examples

Ссылки