babygo:从头开始制作的Go编译器可以自行编译。 这将是最小最简单的go编译器 源码
Babygo,从头开始制作的go编译器 Babygo是一个小型且简单的go编译器。 (我相信,这是世界上最小最简单的。)它是从头开始制作的,可以自行编译。 不依赖任何库。 标准库和系统调用的调用是自制的。 Lexer,解析器和代码生成器是手写的。 发出重新生成单个静态二进制代码的汇编代码。 它仅as汇编器而依赖,而ld作为链接器而依赖。 它仅由几个文件组成。 main.go-主编译器 runtime.go-运行时 runtime.s-低级别的运行时 lib /-库 设计 Lexer,解析器和AST ast,lexer和parser的设计和逻辑是从go/ast , go/scan
文件列表
babygo-main.zip
(预估有个33文件)
babygo-main
.gitignore
72B
.shared
.gitkeep
0B
diff
49B
main.go
141KB
README.md
2KB
Makefile.mac
634B
runtime.s
2KB
.github
暂无评论