10

试图获得一个业余项目爱好,让我从朝九晚五的 C# 工作中保持动力,并且正在研究 Boo。一些?

  • 你和 Boo 在一起是什么体验?
  • 您使用 Boo 完成了哪些应用程序/项目或
  • Boo有什么能力?

猜猜是网络世界,想弄脏桌面应用程序等。

4

6 回答 6

5

我与 Boo 的个人经历是从大约 18 个月前开始的,从那时起我就没有积极地遵循它,所以请记住我所说的。这是一种很酷的语言。但这也是实验性的。这实际上意味着什么:

  • 你可以用语言做很酷的事情。他们允许的宏,加上混合了 ruby​​ 和 python 和其他语言的良好特性。
  • 您可以通过 SharpDevelop 使用 WinForms 设计器(将 Boo 集成为标准开发语言)。
  • 由于尚未完成,因此偶尔会在关键区域出现不一致和错误。

  • 我不确定是否可以使用 Boo 创建泛型,但它们肯定可以使用。

  • 性能很好,但编译器没有优化器。

  • 类型推断很酷。鸭打字很酷。所有这些都可以让您接近动态类型的错觉。

就个人而言,我开发了一种工具来简化创意写作。为作家考虑 IDE。

于 2008-10-15T21:39:57.063 回答
3

虽然它只使用 Boo 作为实现语言(而不是从根本上讲Boo),但您是否阅读过 Ayende 的“在 Boo 中构建特定领域的语言”?它尚未完全发布,但您可以获得早期访问版本。

我还没有时间仔细研究 Boo,但与 C# 3(获得 Boo 的一些特性)相比的主要优势似乎是简洁(大量类型推断)和元编程。

于 2008-10-15T21:19:22.360 回答
3

Boo 是非常强大的 DSL 创建工具(外部和内部)

可以使用宏、元方法和可扩展的编译器管道创建内部 DSL。Boo 语言的扩展 - Boo.OMeta.Parser 可用于创建外部 DSL。

目前解析器正在开发中,但它已经可以用于创建复杂的外部 DSL。OMeta 是一个强大的工具,它使程序员能够轻松地实现词法分析器和解析器。Boo 的可扩展编译器管道架构允许用 Boo.OMeta.Parser 替换标准的 Boo.Parser。它可以用几乎任何一种语法来扩展 Boo 语法。该示例可以在此处找到。

于 2011-05-17T21:24:20.933 回答
2

一些真正符合 Boo 动态思维的用法:

于 2008-11-23T13:57:08.197 回答
2

我正在与 Boo 合作一个辅助项目,以实现声明性数据绑定宏。语言很酷!它给了我一些我没有的编译器构造经验。

只是为了好玩,我正在 Ubuntu 8.10 上的 Mono 上使用 Boo。

于 2009-03-27T20:23:28.093 回答
1

你应该看看 Boo 的一些有趣的语言特性

于 2008-10-15T21:19:42.313 回答