我正在为一种简单的语言编写编译器。
我制作了一个词法分析器/标记器,它接受一个文件并将标记打印在stdout
.
现在我想进行句法分析,但我不知道如何修改我的词法分析器以便将标记作为输入。
- 链表对于大文件效率极低(大约 80MB 的源文件需要大约 1.3GB 的内存)
- 我可以修改我的词法分析器以在每次调用它时给出下一个标记(想法取自 Dragon Book),但我不知道如果在过程中的某个地方我必须返回并读取以前的标记我会做什么。
做这些事情的正确方法是什么?
我正在为一种简单的语言编写编译器。
我制作了一个词法分析器/标记器,它接受一个文件并将标记打印在stdout
.
现在我想进行句法分析,但我不知道如何修改我的词法分析器以便将标记作为输入。
做这些事情的正确方法是什么?