Shedskin
Shed Skin | |
---|---|
Тип | реализация языка программирования[вд] и транспайлер |
Автор | Mark Dufour |
Написана на | Python, C++ |
Операционные системы | Cross-platform: Linux, macOS, Windows |
Языки интерфейса | Python |
Первый выпуск | 2005 |
Последняя версия | |
Репозиторий | github.com/shedskin/shed… |
Лицензия | GPL 3, BSD |
Сайт | shedskin.github.io |
Shed Skin — проект 2005 года, транслятор программ, написанных на подмножестве языка Python, в оптимизированное C++ представление. Может транслировать только статические типы данных приложений на Python в код C++. Может генерировать как самостоятельные приложения, так и модули расширения, которые могут быть импортированы в большие приложения на языке Python[2] .
Кроме ограничения статической типизации, не все модули стандартной библиотеки Python поддерживаются транслятором. В настоящий момент поддерживаются порядка 25 модулей, таких как random и re[3]. Также реализованы не все особенности языка Python, например, не поддерживаются вложенные функции и переменное количество аргументов функций. Не поддерживает Unicode.
Shed Skin — проект с открытым исходным кодом, опубликован под лицензиями GPL и BSD, свой вклад в развитие проекта привнесли Francois Boutines, Jason Ye, Brent Pedersen, Joris van Zwieten, Thomas Spura, Paul Boddie и множество других участников.
Важным достоинством проекта, является возможность быстрой разработки программ на высокоуровневом языке программирования (Python), с последующей трансляцией кода в C++, что после компилирования, позволяет увеличить быстродействие созданных приложений. Главное отличие от проекта PyPy состоит в том, что Shed Skin позволяет экономить оперативную память.
Для набора из 80 нетривиальных испытательных программ[4], измерения показали ускорение выполнения программ от 1 до 100 раз, в сравнении с CPython.
См. также
[править | править код]- Pyrex (язык программирования)
- Cython
- PyPy — реализация стандартного интерпретатора и транслятора языка Python написанная на языке Python.
Примечания
[править | править код]- ↑ Shed Skin v0.9.9 — 2024.
- ↑ Master Thesis Mark Dufour, "Shed Skin. An Optimizing Python-to-C++ Compiler" Архивная копия от 5 июля 2007 на Wayback Machine, April 19, 2006
- ↑ Shedskin 0.9 release notes . Дата обращения: 14 октября 2018. Архивировано 10 декабря 2017 года.
- ↑ http://code.google.com/p/shedskin/downloads/list Архивная копия от 6 декабря 2011 на Wayback Machine Shed Skin Examples
Ссылки
[править | править код]- shedskin.github.io — официальный сайт Shedskin
- Shed Skin Blog (англ.)
- Исходный код shedskin