【问题标题】:A guide to Boo's metaprogramming and extensibility features?Boo 的元编程和可扩展性功能指南?
【发布时间】:2009-11-01 02:51:09
【问题描述】:

我有兴趣了解 Boo 更强大的功能,例如句法宏、解析器支持(Ometa?)、编译器管道等。我的印象是,这些领域一直在不断变化,而且文档记录不足。除了学习源代码,还有什么好的资源可以学习这些东西吗?

【问题讨论】:

    标签: metaprogramming extensibility boo


    【解决方案1】:

    问代码园丁/嘘作者@rodgrigobamboo

    boo metaprogramming facilities I - the ast”。

    【讨论】:

    • 嗯,那是一页信息——整个博客的唯一一页?转到bamboo.github.com,你会得到同样的东西。不过有用的信息。
    【解决方案2】:

    Building Domain Specific Languages in Boo。我得到了一个抢先体验版,发现它令人沮丧,因为你提到的“流量”原因;我终于放弃了。希望从那时起事情已经稳定下来。

    【讨论】:

    • 在 Boo 中构建 DSL 确实有一些关于 Boo 的内容,但总的来说,这本书是关于 DSL 的,几乎没有掩盖 Boo 元编程的一些最高最明显的水平。
    【解决方案3】:

    欢迎在邮件列表中提问:

    http://groups-beta.google.com/group/boolang?pli=1

    【讨论】:

      【解决方案4】:

      到目前为止,了解 Boo 能做什么的最佳参考是花大量时间进行测试。弄清楚发生了什么需要一段时间,但测试确实可以锻炼所有可用的肌肉并且写得很好。 https://github.com/bamboo/boo/blob/master/tests/testcases/macros/macro-1.boo

      另外,请注意 boo 的解释器 - booish- 非常出色,如果您不确定测试的工作原理,您可能应该花时间在 booish 上进行刺激。 http://boo.codehaus.org/Interactive+Interpreter

      【讨论】:

        【解决方案5】:

        我没有仔细浏览过这个网站,但它似乎对 Boo 有最好的参考: http://boo.codehaus.org/Tutorials

        这部分仍然没有很好的文档记录,但是如果您查看https://github.com/bamboo/boo/wiki/Syntactic-Macros,您可以了解如何制作语法宏。基本上你必须实现Boo.Lang.Compiler.IAstMacro

        正确的部分在 https://github.com/bamboo/boo/wiki/Abstract-Syntax-Tree 中,但它看起来很不完整。

        【讨论】:

        • 我有,而且网站上几乎没有任何内容涉及 Boo 元编程和宏。该网站在 Boo 生命早期充实,而 Metaprogrammign 仍在进行中。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-10
        • 1970-01-01
        • 2014-09-13
        • 1970-01-01
        • 2011-07-09
        • 2013-01-29
        相关资源
        最近更新 更多