5

我目前正在 Scala 中实现一个小型编译器,当我在做上下文分析的组件时,我发现了Binders包中的特征scala.util.parsing.ast(我使用的是 Scala 2.9 RC),它记录在案以在解析时启用名称绑定。这听起来很有趣,我在谷歌上搜索了很多,但我仍然不知道如何使用它。虽然我当然可以让我的抽象语法从中派生,Binders但我不知道如何从那里着手。网上有没有使用的例子?

4

2 回答 2

3

通过谷歌搜索,我找到了这个页面,这似乎是一个包含更多细节的文档的开发版本。不幸的是,我无法找到这些文档的在线(我的意思是在源存储库之外)版本。

但是,我不确定您是否会在此库中找到所需的内容。名称解析是一件相当微妙的事情,在解析期间这样做听起来像是一个有问题的想法。这个库本身的文档强调它只适用于名称解析相对简单的语言,否则可能无法扩展。此外,Scala 存储库中的解析示例都没有使用这个类。

我会谨慎地避开这个未知领域,并在单独的解析后通道中设计绑定分析。

于 2011-04-22T07:21:47.963 回答
1

你不应该使用它。事实上,它最近已被弃用。

请参阅 弃用候选者:scala.parsing.ast

于 2012-06-26T09:37:31.240 回答