【发布时间】:2013-05-15 15:57:59
【问题描述】:
我在某处听说 XML 是一种用于抽象语法的语言。现在这里我不明白的是,如何使用 XML 来指定抽象语法或结构或系统。
有人可以帮我解决这个概念吗?
谢谢
【问题讨论】:
-
你听说过“解析树”吗?如果没有,请查找 - 由于 XML 具有树结构,因此它可以表示其中之一,这意味着它可以表示已解析的语法。
-
您可以在 XML 中编码 AST,正如 Patashu 所指出的。请参阅stackoverflow.com/a/15992608/120163 以获取以这种方式编码的示例 AST。但是...不要将 XML 混淆为编码 AST 的唯一方法;请参阅stackoverflow.com/a/6378997/120163 了解类似 LISP 的替代方案。此外,不要将 XML 与编码 AST 的好方式混淆;它相当庞大,而且编码为 XML 的实际程序的 AST 相当大且笨重。