第 6 期:Go 语言的编译器
本期摘要:这是 Go 夜聊的第六期节目,这期我们有幸请到了目前在 Go 语言仓库贡献排行榜上前全球前五十的贡献者——史斌,并和他一起聊了聊编译器相关的技术和相关行业的一些未来。Go 语言的编译器有什么特点?还有哪些可以改进的空间?从事芯片和编译技术相关的工作又有哪些挑战?
时间线
- 00:00 开场
 - 01:00 接触 Go 语言的起因
 - 03:31 Go 语言在芯片行业的现状
 - 04:57 成为中国 Go 语言贡献者排名第一的经历
 - 12:30 加入 Go 团队的 GitHub 组织
 - 19:11 Go 语言中国贡献者俱乐部的成立过程
 - 21:57 Go 语言在芯片行业的困境
 - 26:26 基于 SSA 的 Go 编译器
 - 32:02 现阶段编译器的改进空间
 - 35:10 基于寄存器的调用规约
 - 38:24 gccgo 和 gollvm
 - 42:19 编译技术和行业的未来
 - 47:30 推荐
 - 50:05 尾声
 
相关链接
- 乘法指令生成错误
 - 寄存器索引 LOAD/STORE
 - Go 1 Benchmark
 - Go 团队在 GitHub 的组织
 - 前 Go 团队成员 Brad Fitzpartrick
 - Go 团队成员 Cherry Zhang
 - Go 语言贡献者李保坤
 - Go 语言贡献者蒙卓
 - Go 语言中国贡献者俱乐部
 - 史斌在 GopherChina 2020 上关于 Go 编译器的演讲
 - Erlang
 - CSP 顺序进程通信
 - Rob Pike
 - Ken Thompson
 - SSA 静态单赋值形式
 - IR 中间语言
 - Intrinsic 内建函数
 - 阵列编程与向量化
 - 循环优化
 - Go 语言增加循环优化的讨论 Issue 24240
 - 指令流水
 - GCC
 - LLVM
 - 调用规约
 - gccgo
 - gollvm
 - TinyGo
 - Proebsting 定律
 - Moore 定律
 - 书籍:《史记》
 - 书籍:《战国策》
 - 书籍:《不拘一格》
 - 播客: 从零道一
 - 书籍:《Ray Tracing Gems II》
 

