真相调查:Go 语言真的消灭了 Undefined Behavior 吗?

本文永久链接 – https://tonybai.com/2026/03/16/go-language-eliminated-undefined-behavior-truth-investigation 大家好,我是Tony Bai。 在系统编程的古老传说中,流传着一个关于“鼻恶魔”(Nasal Demons)的笑话。 这个梗源自 comp.std.c 新闻组,它是对 C/C++ 语言中“未定义行为”(Undefined Behavior,以下简称 UB)最生动也最恐怖的诠释。根据 ISO C++ 标准,如果你的代码触犯了 UB(例如数组越界、有符号整数溢出、空指针解引用),编译器可以“为所欲为”。 ...

March 16, 2026 · 12 min · Tony Bai

Go mod init 降级撤回背后:精英主义正在杀死 Go 社区的民主?

本文永久链接 – https://tonybai.com/2026/02/27/go-mod-init-controversy-elitism-vs-democracy 大家好,我是Tony Bai。 仅仅在 Go 1.26 正式发布几周后,一场席卷 Go 社区的风暴迎来了戏剧性的转折。面对广大开发者对 go mod init 默认降级为 1.(N-1) 的强烈不满,Go 核心团队技术负责人 Austin Clements(aclements)亲自下场“灭火”,并明确表示:官方正倾向于撤回这一改动,恢复 1.N 的默认行为。 ...

February 27, 2026 · 8 min · Tony Bai

拒绝 AI 署名!Go 核心团队在 AIGC 时代划下的“工程红线”

本文永久链接 – https://tonybai.com/2026/02/15/go-core-team-rejects-ai-authorship 大家好,我是Tony Bai。 在生成式 AI 狂飙突进的 2026 年,编程似乎变得前所未有的容易。Claude Code、Gemini Cli、Codex等 已经成为开发者的标配。然而,技术便利的背后,模糊的责任边界正在侵蚀软件工程的根基。 ...

February 15, 2026 · 7 min · Tony Bai

Go 的“浮点数陷阱”将被填平:浮点转整数即将在所有平台上行为一致

本文永久链接 – https://tonybai.com/2026/01/11/proposal-float-to-int-conversions-should-saturate-on-overflow 大家好,我是Tony Bai。 你是否知道,同一行简单的代码 int64(myFloat),在 Intel (amd64) 机器上可能返回一个巨大的负数,而在 ARM64 机器上却可能返回最大正整数? ...

January 11, 2026 · 5 min · Tony Bai

Brad Fitzpatrick 也等不及了!sync.Map 的泛型进化与 sync/v2 的诞生之路

Brad Fitzpatrick 也等不及了!sync.Map 的泛型进化与 sync/v2 的诞生之路 - Tony Bai Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

December 1, 2025 · 4 min · Tony Bai

连 Rob Pike 都感到“担忧”:Go 1.26 SIMD 引入的新复杂性与应对之道

本文永久链接 – https://tonybai.com/2025/11/06/proposal-simd-cpu-feature-vet-check 大家好,我是Tony Bai。 Go 1.26 将于11月份功能特性冻结,其最令人期待的实验特性之一,无疑是simd 包的引入。它承诺为 Go 开发者解锁 SIMD (Single Instruction, Multiple Data) 的强大能力,让我们能编写出榨干现代 CPU 向量化计算潜能的高性能代码。然而,在这片兴奋的浪潮之下,一个不和谐的声音却悄然响起,而这个声音,来自 Go 语言的联合创始人之一——Rob Pike。 ...

November 6, 2025 · 8 min · Tony Bai

Go 错误处理语法之争尘埃落定?Go 团队为何十五年探索后仍选择“不”

Go 错误处理语法之争尘埃落定?Go 团队为何十五年探索后仍选择“不” - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

June 4, 2025 · 6 min · Tony Bai

Go语言进入“后元老时代”?Ian Lance Taylor离职引发的思考:传承、创新与社区

Go语言进入“后元老时代”?Ian Lance Taylor离职引发的思考:传承、创新与社区 - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

May 11, 2025 · 7 min · Tony Bai

关于Go错误处理新提案的一个想法:?操作符这样用行不行

关于Go错误处理新提案的一个想法:?操作符这样用行不行 - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

February 8, 2025 · 7 min · Tony Bai

Go 1.23中的自定义迭代器与iter包

本文永久链接 – https://tonybai.com/2024/06/24/range-over-func-and-package-iter-in-go-1-23 在《Go 1.23新特性前瞻》一文中,我们提到了Go 1.23中增加的一个主要的语法特性就是支持了用户自定义iterator,即range over func试验特性的正式转正。为此,Go 1.23还在标准库中增加了iter包,这个包对什么是Go自定义iterator做了诠释: ...

June 24, 2024 · 19 min · Tony Bai