英语里 a 和 an 到底怎么选
Red Blob Games 从程序生成文本的实际需求出发,讨论英语不定冠词 a/an 的判定规则:关键不是首字母是否是元音字母,而是发音是否以元音音素开头。 例如 unicorn 虽是 u 开头却读 Y 音应用 a,hour 虽是 h 开头却读 OW 音应用 an。作者花一天时间分析数据并做可视化,发现 32455 个词里只有 129 个需要特殊处理,结果比他预想的简单很多。 文中还附了一段对 LLM 写代码的反思:这类一次性问题其实更适合直接用 LLM 写正确但不追求可维护性的代码,自己在解析 cmudict 和重学 D3.js 上花了太多时间。 属于偏语言处理/编程趣味的个人向短文,信息密度中等,适合 HN 风格读者轻读并展开讨论“程序生成文本里这类语言规则怎么做”。