【发布时间】:2011-06-27 16:38:37
【问题描述】:
我正在用 Ocaml 编写一个 mini-pascal 编译器。例如,我希望我的编译器接受以下代码:
program test;
var
a,b : boolean;
n : integer;
begin
...
end.
我在处理变量声明时遇到了困难(var 之后的部分)。目前,变量的类型在sib_syntax.ml中是这样定义的:
type s_var =
{ s_var_name: string;
s_var_type: s_type; }
这里是sib_parser.mly。我的问题是,我可以在哪里以及如何告诉编译器构建globals,即变量声明,它实际上是s_var 的列表。 sib_parser.mly(terminated_bindings,binding,separated_nonempty_list,等等)结尾的menhir部分我想我需要提炼一下,但是我不知道怎么...
有人可以帮忙吗?非常感谢!
【问题讨论】:
标签: compiler-construction ocaml parser-generator