这是「优质 YouTube 内容精选」第 2 轮,聚焦 programming(编程与开发) 分类。本期我没有选择热门框架或 AI 编程工具,而是把目光投向一个看似冷门、实则正在悄然渗透整个工程界的方向——类型系统与函数式编程。
核心发现令人意外:当大语言模型让"写出能跑的代码"变得几乎零成本时,怎样写出"不会出错"的代码反而成了稀缺能力。而这套能力的底层语法,正是函数式编程(FP)与类型论在过去六十年沉淀下来的思想。从 Rust 的所有权系统、TypeScript 的类型推断,到 Swift 的代数数据类型、Scala 3 的给定实例(given/using),主流语言正在集体"向数学靠拢"。
本期精选的 6 个频道/系列,恰好构成了一条完整的认知阶梯:从 λ 演算的纯理论起点,到 Haskell 的纯粹实践,再到 Rust 的工程落地,最后到 Roc 这样的下一代实验。它们风格迥异——有大学教授的严谨、有 Computerphile 的科普趣味、有 Jon Gjengset 的硬核深潜、也有 Tsoding 的"为乐趣编程"。这种多样性本身,就是函数式思想生命力的最好证明。
在进入频道之前,有必要先说清这股"复兴"的时代逻辑,它决定了我们为什么应该花时间看这些内容:
graph TD
A[λ演算 / 1958] -->|理论基础| B[Haskell / 纯函数式]
B -->|实践验证| C[OCaml / Elm / Roc]
B -->|思想渗透| D[主流语言借鉴]
D --> D1[Rust 所有权类型]
D --> D2[TypeScript 类型推断]
D --> D3[Swift 代数数据类型]
D --> D4[Scala 3 given/using]
D1 --> E[2026: 类型系统成为正确性基础设施]
C --> E
style A fill:#f9f,stroke:#333
style E fill:#bfb,stroke:#333,stroke-width:2px
| 频道 / 系列 | 核心领域 | 内容风格 | 单集时长 | 最适合人群 |
|---|---|---|---|---|
| Graham Hutton — Haskell 课程 | 纯函数式理论+实践 | 大学者课堂,严谨清晰 | 15–35 分钟 | 想系统入门 FP 的工程师 |
| Computerphile — λ演算/类型论 | 计算机科学理论 | 科普趣味,动画讲解 | 8–15 分钟 | 对"为什么"好奇的所有人 |
| Jon Gjengset — Crust of Rust | Rust 系统+类型工程 | 直播式深潜,硬核 | 1.5–3 小时 | 有基础的 Rustacean |
| Richard Feldman — Roc | 下一代函数式语言 | 访谈+设计哲思 | 40–90 分钟 | 语言设计爱好者 |
| Tsoding — Recreational Programming | 多语言实战,含 Haskell | 娱乐式 live coding | 1–4 小时 | 想看"真人编程"的探索者 |
| Zelenya — FP Tier List | 函数式语言横向比较 | 观点鲜明,节奏快 | 20–40 分钟 | 选型阶段的团队决策者 |
频道:youtube.com/c/GrahamHuttonNotts | 播放列表:Functional Programming in Haskell
Graham Hutton 是诺丁汉大学计算机科学教授,也是 Haskell 教材《Programming in Haskell》的作者。这套课程原本是为该校一年级本科生录制的入门课,却意外成为 YouTube 上被推荐最多的 FP 入门资源之一。它的可贵之处在于把抽象的数学概念翻译成了可上手的代码练习——从列表推导、高阶函数,讲到函子(Functor)、单子(Monad),每一步都配以可运行的 Haskell 例子。
核心洞察:Hutton 最擅长用"最简单的那一个例子"点亮一个概念。比如讲递归时,他只用 factorial 和 length 两个例子,就让你理解"模式匹配 + 递归基例"的通用结构。这种"少即是多"的教学哲学,本身就有温度。
实用价值:哪怕你从不打算写一行生产环境的 Haskell,这套课也会重塑你对"副作用"和"状态"的理解——而这种理解会立刻迁移到你日常的 TypeScript / Python 代码中。
适合人群:有任意一门语言基础、想真正理解函数式编程"为什么这样设计"的工程师。
频道:Computerphile(Brady 旗下科普矩阵,约 240 万订阅)
Computerphile 是计算机科学领域的顶级科普频道,而 Graham Hutton 与 Thorsten Altenkirch 两位教授在这里贡献了三支堪称"镇馆之宝"的短片:
核心洞察:这些视频最打动人的,是把"冷冰冰的理论"讲出了故事感。你会突然意识到:原来编程语言的设计,背后是一百多年来数学家们对"什么是证明"的追问。
实用价值:每集仅 8–15 分钟,是通勤路上最好的"认知升级"材料。看完后再回去看 TypeScript 的泛型、Rust 的生命周期,会有豁然开朗之感。
适合人群:所有对计算机本质好奇的人,无需编程基础。
频道:youtube.com/c/JonGjengset | 系列:Crust of Rust Playlist
Jon Gjengset(GitHub: jonhoo)是 Helsing 的首席工程师、《Rust for Rustaceans》作者,也是 Rust 社区公认的"最有耐心的深潜者"。他的《Crust of Rust》系列专为"已过新手期、想真正搞懂 Rust 内核"的工程师设计,单集动辄两三个小时,逐行实现一个真实组件(如并发的 key-value 存储、迭代器、异步调度),边写边讲。
核心洞察:Jon 的教学有一种罕见的诚实——他会当着镜头的面卡壳、查文档、回退重构。这种"暴露思考过程"的直播式教学,远比事后剪辑的教程更有教学价值。你会看到一名顶尖工程师如何在类型签名的引导下,一步步把正确性"逼"出来。
实用价值:系列深度讲解了 Rust 类型系统如何用于工程——所有权(ownership)、生命周期(lifetime)、trait bound、Send/Sync 标记——本质上都是用类型系统在编译期消灭整类运行时错误。这对任何关注内存安全与并发的系统开发者都是教科书级示范。
适合人群:写过几个月 Rust、想从"能编译"跨越到"理解为什么这样写"的中级 Rustacean。
相关视频:The Roc programming language with Richard Feldman | Roc 官网
Richard Feldman 是《Elm in Action》作者、Roc 语言的创造者。Roc 是一门正在设计中的"快速、友好、函数式"语言,目标是把 Haskell/Elm 的纯函数式体验,与接近 C 的运行性能结合起来。在多个播客访谈中(如 Rust in Production、Rock the JVM),Feldman 系统阐述了他的语言设计哲学。
核心洞察:Feldman 反复强调一个原则——"避免花哨,追求可预测"(avoiding fancy)。他认为很多语言为了理论优雅牺牲了可读性,而 Roc 选择把"函数式的好"以最低的认知成本交付给普通应用开发者。这种"工程师视角的语言设计",是函数式从象牙塔走向大众的关键一步。
实用价值:即使你不打算用 Roc,跟随一个语言从零设计的思考过程,本身就是顶级的设计训练——你会学到如何权衡性能、人体工学、类型安全这三个永恒张力。
适合人群:对编程语言设计、类型系统、编译器内部有兴趣的开发者。
频道:youtube.com/tsoding | Tsoding Daily
Tsoding(真名 Alexey Kutepov,亦称 rexim)是一位"娱乐式程序员"(recreational programmer)。他的频道标签虽写着"recreational",却远不止娱乐——他长期 live coding 各类硬核项目:从用 Haskell 刷题(HaskellRank 系列)、用 C 手写库,到自研构建系统、自制游戏引擎。X-Team 的评价是:"他的'recreational'标签低估了内容的教育价值。"
核心洞察:Tsoding 最有感染力的,是那种"纯粹为求知乐趣而编程"的态度。在 HaskellRank 系列里,你能看到他如何用函数式的思维把一道道算法题拆解成优雅的 pipeline。他的名言"你们别再光学语言了,开始学编程本身吧"(stop learning languages, start learning programming),点破了很多新手"囤语法而不练思维"的误区。
实用价值:如果你想看"函数式风格如何真正用于解题",而不是停留在概念背诵,Tsoding 是最好的真人示范。
适合人群:想看高手如何真实编程、对多语言都感兴趣的探索型学习者。
相关视频:Ranking Functional Programming Languages | 配套文章
Zelenya 是专注于函数式编程普及的创作者。他的"FP Tier List"视频用游戏式的分级方式,把 Haskell、OCaml、Scala、F#、Elixir、Elm、Clojure、Roc 等语言按"学习价值 / 工作机会 / 生态成熟度"做了横向排名,观点鲜明、节奏明快。
核心洞察:这类分级最大的价值不是"标准答案",而是提供一个选型框架。Zelenya 会坦率地说出每门语言的甜蜜点与痛点——例如 Haskell 适合学理论但岗位稀缺、Elixir 在并发 Web 场景无对手但类型支持仍在完善、OCaml 平衡了性能与人体工学。
实用价值:当你的团队需要为某个领域(如金融建模、分布式后端、前端)挑选函数式语言时,这份分级能帮你快速缩小候选范围,避免在错误的工具上浪费时间。
适合人群:处于技术选型阶段、需要横向比较的团队负责人与架构师。
graph LR
subgraph 理论基石
L[λ演算<br/>Computerphile]
T[类型论<br/>Propositions as Types]
end
subgraph 纯函数式实践
H[Haskell 课程<br/>Graham Hutton]
Z[FP Tier List<br/>Zelenya]
end
subgraph 工程落地
R[Crust of Rust<br/>Jon Gjengset]
ROC[Roc 语言<br/>Richard Feldman]
end
subgraph 实战示范
TS[Tsoding<br/>娱乐式编程]
end
L --> H
T --> H
H --> Z
H --> R
H --> ROC
R --> TS
H --> TS
ROC -.下一代.-> R
style L fill:#ffe,stroke:#996
style T fill:#ffe,stroke:#996
style R fill:#eef,stroke:#449
style ROC fill:#efe,stroke:#494
这条认知路径可以这样走:先用 Computerphile 建立直觉 → 跟 Graham Hutton 系统学 Haskell → 用 Zelenya 的分级做选型 → 跟 Jon Gjengset 看 Rust 工程落地 → 关注 Richard Feldman 的 Roc 看未来 → 随时打开 Tsoding 看真人实战。
这期所选的 6 个频道,本质上在做同一件事:用数学的严谨,对抗软件的复杂。在一个代码可以被 AI 一键生成、但"为什么它是对的"却无人能答的时代,函数式编程与类型系统提供的,正是这种"可证明的正确性"。它们不再是少数极客的玩具,而是正在成为整个工程界的基础设施。
如果你只能从这期记住一句话,那应该是 Hutton 在 λ 演算视频里那朴素的开场:计算,本质上是函数的求值。从这个原点出发,你会发现整座编程语言的大厦,其实都建在同一个数学地基之上。
本文由「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 等场景全覆盖。
