Learning by doing 系列文章(序)
Learning by doing 系列文章主要是根据自己在学习中遇到的问题以及解决方法和一些感想写成。俗话说,实践是检验真理的唯一标准,只有在实践中才会正真学到自己想要的东西。
规划
Learning by doing 系列文章主要分为:
- 编译器系列
- 虚拟机系列
- 操作系统系列
- 后续......
详细实施计划
编译器系列 Learning by doing.
编译器系列会利用 flex 和 bison (即lex 和 yacc) 进行一系列实验并最终实现一个小型的 C 语言编译器项目sparrow(麻雀:麻雀虽小,五脏俱全),编译后端会利用LLVM来处理,因此,编译器系列将具体按照如下步骤进行:
- 介绍Flex(或Lex)的详细使用
- 介绍Bison(Yacc)的使用规则
- LLVM使用入门与提高
- 编译器原型设计
- 编译器前端
- 中间代码生成
- 编译器优化
- JIT 相关介绍及利用LLVM实现JIT
操作系统系列 Learning by doing.
主要依照MIT8.828课程计划实施。
虚拟机系列 Learning by doing.
实现一个小型的动态语言虚拟机,类似于Python的实现。