可能是最小的编译器

238 阅读1分钟
原文链接: github.com

THE SUPER TINY COMPILER

Welcome to The Super Tiny Compiler!

这是一个超级简单的编译器的例子,包含了现代编译器的几个主要部分,用简单易读的 JavaScript 编写。

把这个读完将会有助于你了解大多数编译器从前端到后端是如何工作的。

想直接看代码?点这里

或者... 看看演讲


为啥我要关心这个?

确实,大多数人在日常工作中没有必要了解编译器都是如何工作的。但是,编译器无处不在,你使用的很多 工具的底层原理都是从编译器那儿来的。

但是编译器太高大上了!

额,确实。但这是我们(写编译器的人)的过错,我们把一些本应该很通俗易懂的事情弄得太可怕了, 让很多人都认为编译器这种东西是可望而不可即的,甚至只有最书呆子的书呆子才能理解。

好吧,所以我该从哪儿开始?

太棒了!直接去看 super-tiny-compiler-chinese.js 这个文件吧!

Tests

直接运行 node test.js


cc-by-4.0