在看了这两个项目之后,似乎两者都很相似.两者都运行在CLI之上,两者都具有python样式语法,都使用.NET而不是标准的python库.
那么,它们之间的区别和各自的优势是什么?
Vol*_*lkA 25
我看到的主要区别是Boo是静态类型的,这意味着变量的类型是在它的第一个赋值中推断出来的并且从那里得到修复 - 而IronPython具有普通Python代码的"真实"动态行为.
IronPython 现在由Microsoft正式维护,目标是2.0版中的新动态语言运行时.我怀疑因为它的静态类型性质Boo可能会更快.虽然我没有太多"真实"的经验......
IronPython还重新实现了许多python标准库,因此您可以在IronPython(例如Django)上运行大量python软件而无需更改.
Rya*_*rom 14
Boo是静态类型的,但有可选的鸭子打字(根据我的经验,它运作得相当好).Boo还专门设计为"手腕友好" - 换句话说,最大限度地减少使用Shift键组合的需要.它在SharpDevelop中具有良好的IDE支持.
很明显,Boo从Python中获得了很多灵感,但也旨在充分利用.NET功能.
性能方面,Boo感觉比IronPython略快,特别是缺乏IronPython明显的启动延迟.
Boo仍然是一种不成熟的语言,缺乏Python社区.我个人对在生产中使用它有点谨慎.此外,我不同意它从Python中所做的所有偏离,例如在课堂上摆脱明确的自我.
Win*_*ett 11
我还没有使用过IronPython,但这就是我对Boo的了解......
我用Boo做过这样的事情:
像Winston说的那样,Boo由于其开放的编译器架构而具有很强的可扩展性,请看一下这些例子: