Будущее и стабильность IronPython - PullRequest
8 голосов
/ 07 октября 2010

В настоящее время я ищу возможный способ интеграции моего приложения C ++ / C # с некоторыми из моих скриптов Python. На данный момент, IronPython кажется, путь.

Однако, прежде чем продолжить, я хотел бы спросить следующее:

  • Насколько стабилен IronPython сейчас? Готов ли он к производственному использованию? Есть ли какие-либо известные причуды / ошибки?
  • Какое будущее у IronPython? Будет ли оно исправлено для исправления ошибок? Будут ли новые версии?

Мне особенно интересно использовать IronPython для запуска веб-фреймворка Python, такого как Django или Web2py. Мне очень хорошо известно, что современные веб-фреймворки Python не очень хорошо с ним работают . Поэтому любые идеи о будущем поддержки веб-фреймворков IronPython также будут высоко оценены.

1 Ответ

7 голосов
/ 07 октября 2010

Чтобы ответить на ваш второй вопрос, да, IronPython будет разработан в будущем. В настоящее время существует «мораторий на изменение языка» на CPython, основной ветви Python (см. PEP 3003 . Люди Python хотят, чтобы CPython, Jython и другие ветви разработки Python догоняли CPython, и они делают именно это. Если все пойдет по плану, к тому времени, когда мораторий закончится, IronPython и другие будут в курсе и будут иметь реализации, которые следуют синтаксису и функциям Python 3.x. Кроме того, так как IronPython поддерживается Microsoft и является ключевой частью их динамической языковой среды исполнения (какой бы она ни была), она вряд ли будет отменена.

Прямо сейчас IronPython делает хороший прогресс. Согласно их SVN, код меняется довольно регулярно (1 регистрация через день или около того). Совместимая реализация Python 2.7 находится в разработке, и альфа была выпущена 16 июля (так что IronPython 2.7 можно ожидать в ближайшем будущем).

Что касается стабильности интерпретатора, она выглядит довольно стабильной. Я не использовал IronPython широко, но релиз 2.6.1 ведет себя почти так же, как интерпретатор CPython 2.6, не учитывая стандартную библиотеку.

Многие расширения для CPython не работают с IronPython. Итак, если вы хотите использовать Django или что-то в этом роде, вероятно, не стоит использовать IronPython, потому что он не является кроссплатформенным, не работает с некоторыми средами и работает хуже, чем CPython. Настоящее преимущество IronPython - это доступ ко всему, что может предложить .NET, включая ASP.NET (веб-фреймворк) и Silverlight.

Если вы хотите использовать .NET, IronPython - лучший путь для сценариев.

...