这是第 2 轮精选,聚焦 programming(编程与开发) 分类。前几轮我们走过了操作系统内核、数据库内核、Rust 系统编程、可扩展系统工程、API 工程等"系统侧硬骨头",本期我们换一个常被忽视却极具杠杆效应的方向——编译器与编程语言实现(Compiler & Programming Language Implementation, PLI)。
为什么说它有杠杆效应?因为理解编译器,等于一次性吃透三件事:数据结构怎么真正用起来(树、图、符号表、哈希)、形式语言理论怎么落地(正则、上下文无关文法、自动机)、程序在机器上到底怎么跑(调用约定、寄存器分配、目标代码)。它是少有的能"一通百通"的工程主题。
围绕这个主题,YouTube 上其实有一条相当成熟的内容生态——从入门可视化、到硬核手写、到直播式实战、到理论科普。本期精选七个风格迥异但都极具教学价值的频道,按"学习路径"而非"热度"排列,帮你从零建立起一门语言从源码到运行的完整心智模型。
| 频道 | 风格定位 | 核心代表作 | 技术深度 | 适合阶段 | 推荐指数 |
|---|---|---|---|---|---|
| Sebastian Lague | 精美可视化、叙事流畅 | 《Code an Interpreter》系列 | ★★☆ | 零基础入门 | ⭐⭐⭐⭐⭐ |
| Computerphile | 学术科普、短小精悍 | 编译原理 / 类型论短片 | ★★☆ | 概念扫盲 | ⭐⭐⭐⭐ |
| Reducible | 算法与概念深度可视化 | 解析、图算法可视化 | ★★★ | 巩固理解 | ⭐⭐⭐⭐⭐ |
| Tsoding | 直播式实战、硬核娱乐 | "Compiler for a Query Language" | ★★★★ | 动手实践 | ⭐⭐⭐⭐ |
| Bisqwit | 老派硬核、手把手教学 | 《Creating a Compiler》系列 | ★★★★★ | 深度钻研 | ⭐⭐⭐⭐⭐ |
| Low Level Learning | 工具链与底层内部机制 | 链接器 / ELF / ABI 拆解 | ★★★★ | 补全工具链 | ⭐⭐⭐⭐ |
| Creel | 硬件到语言的全栈视角 | CPU、字节码、语言设计 | ★★★ | 拓宽视野 | ⭐⭐⭐⭐ |
频道:Sebastian Lague | 订阅量:约 300 万级(游戏开发与算法可视化的头部创作者)
如果你只能看一个频道来"无痛进入"编程语言实现的世界,那就是 Sebastian Lague。他的《Code an Interpreter》系列(基于 Bob Nystrom 的《Crafting Interpreters》一书)把一个完整的树遍历解释器从零写出来,并配以极其考究的动画:词法分析时字符如何被切成 token、解析阶段如何把扁平的 token 流变成嵌套的语法树、求值时树如何被递归走完。每一步都用可视化的方式让你"看见",而不是"被告知"。
核心洞察:Lague 的真正价值不在于代码量——他的代码并不复杂——而在于降低认知门槛。他用一种近乎纪录片的节奏,让一个原本枯燥的主题变得可观赏。对于从未接触过编译原理的人来说,这套系列是建立"啊,原来编译器/解释器就是这么回事"的第一块基石。
实用价值与应用场景:适合作为入门第一站。看完后你不会立刻能写生产级编译器,但你会拥有正确的词汇表(token、AST、visitor、环境绑定)和完整的心智地图,再去啃更硬核的内容就不慌了。也适合需要为自家产品实现配置语言、规则引擎、查询 DSL 的工程师建立直觉。
适合人群:零基础到初学者;可视化学习者;游戏开发者(他的频道本身偏游戏开发)。
频道:Computerphile | 订阅量:约 270 万级(计算机科学科普老牌频道)
Computerphile 是英国诺丁汉大学出品的计算机科学科普频道,每个视频通常只有 5–10 分钟,由大学教授或博士生面对镜头讲解。在编译器主题上,它不是"教你写",而是"帮你理解概念为什么是这样"——比如什么是词法分析、递归下降解析如何工作、正则表达式与有限状态机的关系、类型系统与类型推断的基本思想。
核心洞察:Computerphile 的独特价值在于学术权威性 + 极短时长。当你在看实战频道时遇到一个术语(如"上下文无关文法"、"左递归"),可以去 Computerphile 找一段几分钟的精炼讲解,相当于随身的"概念查表器"。它的教授们往往能用最朴素的语言点破一个理论本质。
实用价值与应用场景:作为"概念字典"配套使用,而非主粮。在自学编译原理的过程中,遇到理论卡点随时查阅。也适合面试前快速回顾编译原理、形式语言理论的核心概念。
适合人群:所有阶段;尤其适合需要快速、准确理解某个概念的学习者。
频道:Reducible | 订阅量:约 70 万级(算法与系统概念可视化新锐)
Reducible 是近两年崛起的可视化频道,每一期都打磨数月。在编译器相关主题上,它专攻那些"教科书里画了静态图、但你脑子里动不起来"的算法——例如正则表达式如何被转成 NFA/DFA、解析器如何处理二义性文法、垃圾回收器如何标记与压缩。它用 Manim(3Blue1Brown 同款动画引擎)级别的可视化,把算法的执行过程逐帧呈现。
核心洞察:Reducible 填补了一个关键空缺——让理论算法变得可观察。很多学习者卡在编译原理,不是因为不懂定义,而是因为无法在脑中"运行"这些算法。Reducible 把 NFA→DFA 的子集构造、Earley 解析、AST 的多种遍历策略等,全部变成了可观看的动画过程,理解效率倍增。
实用价值与应用场景:当你在实现词法分析器(需要正则→自动机)或解析器(需要理解文法类别与解析策略)时,Reducible 是最佳"可视化辅助"。也强烈推荐给准备面试、需要把算法讲到滚瓜烂熟的工程师。
适合人群:初中级;需要"打通理论与直觉"最后一公里的学习者。
频道:Tsoding | 订阅量:约 60 万级("娱乐性编程"直播派)
Tsoding(其人是 Alexey,曾用网名 tsoding)把自己定位为 "Recreational Programming"——娱乐性编程。他的内容形态很特别:长直播切片,在镜头前一行行写代码、调试、重构、有时翻车再补救。在编译器主题上,他做过大量从零实现语言的实战,例如"Compiler for a Query Language"(为一种查询语言写编译器)、为自有项目编写领域特定语言(DSL)、实现各种小语言解释器等。
核心洞察:Tsoding 教给你的不是"标准答案",而是一个真实程序员解决语言实现问题的思考过程——怎么拆模块、怎么设计 IR、调试时怎么定位符号表错误、性能不行怎么剖析。这种"未经修饰的工程过程"是教科书和精剪视频都给不了的。另外他还维护一个 "Tsoding Daily" 子频道记录开发日志。
实用价值与应用场景:当你准备自己动手实现一门语言(哪怕只是个小 DSL)却不知从何下手,跟着 Tsoding 的某个系列"陪练"几期,能快速获得工程节奏感。他的代码风格偏 C 和自研,对想理解"不依赖庞大框架、纯手搓"的人特别有启发。
适合人群:中级以上;喜欢"看别人真实写代码"的学习者;准备动手实战者。
频道:Bisqwit | 订阅量:约 20 万级(硬核底层编程,芬兰开发者)
如果说前面几个频道是"带你看懂",Bisqwit 则是"带你从第一行 C 代码开始手写一个真编译器"。他的《Creating a Compiler》系列是 YouTube 上少有的、几乎逐行讲解手写编译器的教学片:从设计自己的 C 方言、写词法分析器、构造 AST、实现语义分析、做优化遍,一直到最后生成 x86 汇编并真正链接成可执行文件。配套源码开源在 GitHub(bisqwit/compiler_series)。
核心洞察:Bisqwit 的价值在于完整性 + 深度 + 不畏难。他不回避任何难点——寄存器分配、栈帧布局、调用约定、与系统链接器的对接,全都讲。他展现的是一种"老派黑客"的自信:编译器不是神秘黑盒,而是一个你可以完全掌控的、由若干清晰阶段组成的工程。这种"祛魅"本身就是最大的教育价值。
实用价值与应用场景:这是把"理解编译器"升级为"会写编译器"的关键一级台阶。跟着做完,你将真正理解源码如何变成可执行文件,对 C/C++、汇编、链接过程的理解会发生质变。源码开源,强烈建议边看边对照实现。
适合人群:中高级;愿意投入大量时间深啃的学习者;系统编程爱好者;想彻底搞懂 C 工具链的人。
频道:Low Level Learning | 订阅量:约 80 万级(底层系统与安全研究视角)
编译器只是工具链的一环。一个完整的"源码到运行"链路还包括汇编器、链接器、加载器、运行时与 ABI。Low Level Learning(频道主有十余年安全研究背景)正是补全这一环的好频道:他拆解 ELF 文件格式、讲链接器如何解析符号与重定位、分析动态链接与 PLT/GOT 机制、解释 ABI 与调用约定、剖析可执行文件如何被操作系统加载进内存。
核心洞察:很多能写出前端解析器的学习者,恰恰卡在"代码生成之后的事"——目标文件长什么样、链接器在做什么、为什么要有重定位表、运行时如何初始化全局变量。Low Level Learning 用大量真实二进制演示,把这些"编译后端之后的盲区"照亮,让你对整条工具链有闭环理解。
实用价值与应用场景:在学完 Bisqwit 或 Tsoding 的代码生成阶段后,用它补全链接与加载部分。对做逆向工程、恶意代码分析、性能剖析、嵌入式开发的工程师尤其有价值——理解工具链内部,是这些工作的地基。
适合人群:中级;系统/安全/逆向工程师;想理解"可执行文件到底装了什么"的开发者。
频道:Creel | 订阅量:约 50 万级(硬件到软件的连续视角)
Creel 的独特之处是"全栈到底"——他讲 CPU 怎么从逻辑门搭起来、指令集怎么设计、机器码如何被解码、字节码虚拟机如何工作、一门编程语言怎么从这些底层之上被设计出来。他经常用自制的教学 CPU 和汇编器,把"硬件→指令集→汇编器→虚拟机→高级语言"这条完整链条串起来讲。
核心洞察:Creel 提供了一种稀缺的"垂直连贯性"。多数频道只讲软件层,而他让你看到:编程语言的设计(运算符、控制流、数据类型)其实是建立在底层机器模型之上的抽象选择。理解了这层关系,你才能真正理解"为什么 C 的指针是那样""为什么有垃圾回收的语言要设计字节码虚拟机"。
实用价值与应用场景:适合想打通"软硬边界"的学习者。如果你要设计自己的字节码 VM(很多自研语言都会走 VM 路线),Creel 的字节码虚拟机系列是难得的实战参考。也适合需要从硬件角度理解性能、想自己做模拟器或虚拟机的开发者。
适合人群:初中级;对计算机底层有好奇心的全栈学习者;自研语言 / VM 实践者。
flowchart TD
Start([想要理解/实现一门编程语言]) --> A
subgraph 入门建立直觉
A[1. Sebastian Lague<br/>可视化解释器] -->|建立词汇表与心智地图| B[2. Computerphile<br/>概念查表器]
B -->|补强理论直觉| C[3. Reducible<br/>解析算法动画化]
end
C --> D{动手实践}
subgraph 实战与深度
D -->|陪练式实战| E[4. Tsoding<br/>直播手写语言]
D -->|逐行手写真编译器| F[5. Bisqwit<br/>完整编译器系列]
end
E --> G[代码生成之后]
F --> G
subgraph 工具链与底层闭环
G --> H[6. Low Level Learning<br/>链接器/ELF/ABI]
H --> I[7. Creel<br/>硬件到语言全栈]
end
I --> Done([完整闭环:<br/>源码→词法→语法→语义<br/>→IR→代码生成→链接→加载→运行])
style A fill:#e1f5ff
style F fill:#fff3e0
style Done fill:#e8f5e9
如何用这张图规划学习:先沿上半区(入门建立直觉)走一遍,建立全局观;再根据目标选择下半区入口——想做工程项目陪 Tsoding,想彻底精通陪 Bisqwit;最后用 Low Level Learning + Creel 补全工具链与底层,形成闭环。这样一条路走下来,"编程语言如何被造出来、又如何跑起来"对你将不再是黑盒。
graph LR
subgraph 教学维度
L1[可视化叙事]:::style1 --- SL[Sebastian Lague]
L2[算法动画]:::style1 --- RD[Reducible]
L3[学术短课]:::style2 --- CP[Computerphile]
L4[直播实战]:::style3 --- TS[Tsoding]
L5[逐行手写]:::style4 --- BW[Bisqwit]
L6[工具链拆解]:::style4 --- LL[Low Level Learning]
L7[全栈连贯]:::style1 --- CR[Creel]
end
classDef style1 fill:#e3f2fd,stroke:#1976d2
classDef style2 fill:#f3e5f5,stroke:#7b1fa2
classDef style3 fill:#fff3e0,stroke:#f57c00
classDef style4 fill:#e8f5e9,stroke:#388e3c
不同频道的"知识密度—观赏性—动手门槛"组合差异很大:Lague 与 Reducible 观赏性最高、门槛最低;Computerphile 单点知识最权威;Tsoding 真实但需要你有跟随代码的能力;Bisqwit 与 Low Level Learning 知识密度极高但需要耐心与基础;Creel 则是横向打通的桥梁。按你的当前水平与学习目标组合订阅,远胜于只盯一个"最火"的频道。
bisqwit/compiler_series。本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
