【文件属性】:
文件名称:oberonc:用于JVM的Oberon-07编译器
文件大小:340KB
文件格式:ZIP
更新时间:2021-01-31 13:49:50
programming-language oberon compiler jvm oberon-07
Oberon-07编译器
oberonc是编程语言的单程自托管编译器。 它针对Java虚拟机(版本> = 1.8)。
该项目开始展示Niklaus Wirth编写编译器的方法(有关更多详细信息,请参见HanspeterMössenböck的-Niklaus )。
oberonc受到Niklaus Wirth的RISC处理器编译器的启发,可。
编译器紧凑,不依赖任何第三方库。 它在解析源文件时一次性生成Java字节码。 尽管为堆栈机生成代码很简单,但是复杂的类文件格式以及考虑到Java语言设计JVM的事实使这一任务更加恶化。 实际上,JVM缺少支持Oberon功能所需的许多原语,特别是:
值类型
通过参考评估策略
过程变量(指向函数的指针)和类型的相对结构兼容性
使用变通办法来实现这些功能会大大增加编译器的大小,总共增加了大约6000行Oberon。
源代码是尽可能遵循Niklaus Wirth的编码风格编写的。 在2.80GHz的旧Intel i5上, oberonc可以在不到300毫秒的时间内完成自身编译(对于热VM,则约为100毫秒)。
如何建造
您可以在Linux或W