Вопрос

В чем разница между ЖелезоПитон и БУ?Есть ли необходимость в двух Python-подобных языках?

Это было полезно?

Решение

ЖелезоПитон разработан как точная реализация Python на платформе .NET.Версия 1 предназначена для совместимости с Python 2.4, а версия 2 — с версией 2.5 (хотя большинство модулей стандартной библиотеки Python, реализованных на C, не поддерживаются).

БуЗаявленная цель-быть «благоприятным для запястья [динамический] язык для CLI». Требуется много вдохновения от Python, но расходится на четырех основных моментах:

  1. Он разработан специально для эффективного использования преимуществ платформы .NET.
  2. Дизайнер отклоняется от синтаксиса Python, когда он не согласен с проектными решениями (в первую очередь из-за отсутствия явного указания self).
  3. Язык специально разработан так, чтобы быть «удобным для запястья», то есть свести к минимуму необходимость использования клавиши Shift или других комбинаций нескольких клавиш.
  4. Boo по умолчанию типизирован статически, но допускает дополнительный ввод текста.

Есть и другие незначительные различия в реализации/производительности, но указанные выше цели проектирования должны (IMO) влиять на ваш выбор языков.

Еще две вещи, которые следует учитывать, — это зрелость и общность.Python гораздо более зрелый, чем Boo, и имеет гораздо большее сообщество.IronPython также имеет явное благословение Microsoft.

Другие советы

IronPython — это реализация Python, тогда как Boo — это еще один язык с синтаксисом в стиле Python.Одним из основных отличий является то, что Boo по умолчанию типизирован статически.

Я уверен, что различий больше, я лишь бегло рассмотрел Boo, но хотел посмотреть немного глубже (так много языков, так мало времени!).

Вот список ошибок Boo для программистов на Python, который довольно хорошо суммирует различия:

IronPython — это Python.Бу похож на Питона.

У них разные цели, и хотя IronPython стремится быть таким же, как Python, Boo этого не делает.Бу не беспокоится о совместимости с Python, как IronPython...

Вкратце, претензия Boo на известность заключается в том, что он должен предоставить вам большую часть преимуществ элегантного, лаконичного синтаксиса Python и абстракций очень высокого уровня, но не жертвуя (большинством) преимуществами скорости статически типизированного языка, такого как C#. .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top