电子书 《Compiling to Assembly from Scratch》keleshev.com/compiling-to-assembly-from-scratch/一般帮助读者从零开始学习编译器和编程语言的工作原理的书,书中用的语言是TypeScript 。本书在线阅读免费。“欢迎来到编写自己编译器的奇妙旅程!拿起这本书时,你大概已经非常确定自己想要理解编译器是如何工作的,甚至可能想亲自写一个。尽管如此,下面是一些你应该动手做这件事的理由:✨编写编译器是理解计算机如何工作、如何执行我们的程序的最终步骤。✨通过编写一个小型编译器,你可以看到编译器其实也是程序,就像其他程序一样,并非神灵创造的魔法。✨通过理解汇编语言以及编译器如何将你的程序转化为汇编代码,你能更好地把握你编写程序的性能。✨它能让你更加清晰地看到不同语言特性之间的权衡,从而在何时使用它们以及如何有效使用它们时做出更明智的决策。✨学习解析技术将帮助你处理非结构化数据,如网页抓取,或应对没有现成库的数据格式。✨ 它还将为你在必要时制作自己特定领域的语言做准备,以应对手头的任务。✨它可能是进入编译器工程领域的第一步,这个领域既有前景又充满挑战。✨最后,它将让你体验到创造并实验自己编写的语言的乐趣和兴奋!编译器构建是计算机科学中研究最多的主题,其他任何主题都无法与之匹敌。因此,编译器文献中有大量有用的技术和算法。而且事实证明,其中很多内容在我们日常编程中非常实用。还有一种学派认为,最终,或许所有的程序都是编译器。也许我们并不是在编写 web 应用程序,而是在编写从 DOM 节点到 JSON,再从 JSON 到 SQL 的编译器,谁知道呢!”

