2021 总结

# 看书

在调试 LLVM 上的到一条重要心得: 看书很重要,不然就会遇到:

这一年来看了这么几本书(时间顺序):

  1. 程序员的自我修养:链接、装载与库
  2. CSAPP Computer Systems - A Programmer’s Perspective
  3. Crafting Interpreters
  4. LLVM Essentials
  5. LLVM Techniques, Tips, and Best Practices Clang and Middle-End Libraries
  6. Linux iptables Pocket Reference
  7. The C Programming Language
  8. WebAssembly 原理与核心技术
  9. Learn LLVM 12: A Beginner's Guide to Learning LLVM Compiler Tools and Core Libraries With C++
  10. Rust 程序设计语言
  11. Introduction to Algorithms, Third Edition (进度 160/1313)

其中 4 和 9 建议谨慎阅读,4 是简单把 LLVM 整体概览说了一遍了吧,可以了解一下 LLVM 后端流程,而 9 阅读起来会相当吃力。

# 那么 2022 看什么书?

书不是看一遍就完事了,读书破万卷的破指突破、磨破、识破,我的理解为:

  • 突破:指看了很多的书,对很多知识都有所了解
  • 磨破:反复研读理解书中的内容,并进行一定的实践应用
  • 识破:看破书中真正要表达的内容,最终发挥出一些不一样的效果

明年就定以下几本了:

  • Introduction to Algorithms - 接着看完
  • CSAPP Computer Systems - A Programmer’s Perspective - 二周目完成习题
  • The Linux Command Line
  • The Linux Programming Interface
  • 结合 2022 内容,完成 Lox 的 LLVM 前端实现
  • Modern Compiler Implementation in C
  • Instruction Selection: Principles, Methods, and Applications
  • Getting Started with LLVM Core Libraries
  • Kaleidoscope: Implementing a Language with LLVM

如果很幸运完成了,那就能再加两本了!

  • Computer Networking: A Top-Down Approach
  • Linux System Programming Techniques: Become a Proficient Linux System Programmer Using Expert Recipes and Techniques

# 思考

  • 墨案 MIX 7 YYDS
  • 怎么才能把上面所有的书籍融会贯通?
  • 怎么成为 Fabrice Bellard 这样优秀的程序员?