BOO对IronPython

时间:2009-03-01 21:17:30

标签: python clr ironpython boo

IronPythonBOO之间有什么区别?是否需要2种类似Python的语言?

4 个答案:

答案 0 :(得分:18)

IronPython旨在成为.NET平台上Python的忠实实现。版本1以Python 2.4为兼容性,版本2以2.5版为目标(尽管不支持在C中实现的大多数Python标准库模块)。

Boo的目标是成为CLI的“手腕友好[动态]语言”。它需要Python的很多灵感,但在四个方面存在分歧:

  1. 它专门用于充分利用.NET平台
  2. 设计师偏离了Python语法,他不同意设计决策(最值得注意的是,缺乏明确的自我)
  3. 语言明确设计为“手腕友好” - 也就是说,最大限度地减少使用Shift键或其他多键组合的需要。
  4. 默认情况下,Boo是静态输入的,但允许选择鸭子输入。
  5. 在实施/表现方面还存在一些其他细微差别,但上述不同的设计目标应该(IMO)告知您选择的语言。

    需要考虑的另外两件事是成熟度和社区。 Python比Boo更成熟,并且拥有更大的社区。 IronPython也有明确的微软祝福。

答案 1 :(得分:11)

IronPython是一个python实现,而Boo是另一种具有python-esque语法的语言。一个主要的区别是默认情况下Boo是静态输入的。

我确信会有更多的差异,我只是简单地看过Boo,但我一直想要深入了解(这么多语言的时间太少了!)。

以下是python程序员的Boo陷阱列表,它总结了很好的差异:

答案 2 :(得分:3)

IronPython是Python。 Boo看起来像Python。

他们有不同的目标,虽然IronPython的目标是像Python一样,Boo却没有。 Boo并不担心像IronPython那样与Python的兼容性......

答案 3 :(得分:1)

简而言之,Boo声名鹊起的原因在于它应该为您提供Python优雅,简洁的语法和非常高级抽象的大部分好处,但不会牺牲(大多数)静态类型的速度优势像C#这样的语言。