第 30 章 编译器前端

本章介绍 OCaml 前端,它声明了编译器使用的抽象语法树,提供了一种解析、打印和格式化 OCaml 代码的方法,并最终允许用户编写通过 -ppx 标志调用的抽象语法树预处理器(参见第 ‍13 章和 ‍16 章)。

需要注意的是,导出的前端接口遵循 OCaml 语言和实现的演变,因此不提供 任何 向后兼容性保证。

前端是 compiler-libs 库的一部分。使用 compiler-libs 库的程序应该按如下方式构建

        ocamlfind ocamlc other options -package compiler-libs.common other files
        ocamlfind ocamlopt other options -package compiler-libs.common other files

建议使用 ocamlfind 工具。但是,如果无法使用,可以采用其他方法

        ocamlc other options -I +compiler-libs ocamlcommon.cma other files
        ocamlopt other options -I +compiler-libs ocamlcommon.cmxa other files

要交互式地使用 compiler-libs 库,请启动 ocaml 并输入
#load "compiler-libs/ocamlcommon.cma";;.