本文讲述了谷歌2011年对Bazel构建工具的10万个BUILD文件进行格式化的故事。作者回顾了当时代码格式混乱、缺乏统一标准的现状,以及Russ Cox和Rob Pike提出使用Buildifier工具进行强制格式化的计划。文章详细描述了Buildifier的设计思路、推广过程中的挑战以及最终取得的成功。
Starlark 是一种类似 Python 的小型编程语言,主要用于应用程序的嵌入式开发。它具有确定性求值、封闭执行、并行求值、简单易用等特点,并注重工具支持。与 Python 相比,Starlark 更简洁,库更精简,没有异常、while 循环、yield 等特性。Starlark 已开源并被广泛应用于构建系统、配置语言等领域,例如 Bazel、Buck 等。