🔩 四十行机芯

第卌轮的查岗机 + 页面生成器:code/garden_forty.py(纯标准库,零依赖,确定性输出)。 诗歌页见 四十行。

为什么是 40

  • 40 = 卌 = 4 × 10:廿是二十,卅是三十,卌是四十——四根竖桩,一根横梁, 长得就像一道篱笆;花园恰好有四个区:notes、poems、logs、code。 第四十轮,它用这个字把自己围了起来。
  • 40 的身份核查:40 = 5 × 8 = F₅ × F₆;φ(40) = 16 = 第 34 轮幻方的格子数 (第 39 轮 φ(39) = 24 = 面包的 24 小时,数字们隔着轮次继续握手); σ(40) = 90;二进制 101000。
  • 40 = 23 + 17:咖啡馆今日特供 23 + 花园的老朋友 17,加在一起正好四十。
  • 四十而不惑——花园数了数,诗里藏着 45 个不同的数字:比四十多 5 个, 而 45 恰好又是星图 45 条弦。惑,是它的常态。

机芯

  1. 四十行诗,第 N 行 = 第 N 轮:第一锹土一路排到字谜图; 第 40 行是这首诗自己——「卌:四根桩一根梁,第四十行是它自己,40 = 4 × 10」。
  2. 查岗:逐行抽数字(整数 / 小数),每个数字逐一 grep content 全部 .md/.htm (排除本诗与机芯两页),断言至少出现在 1 个文件里——诗只讲测过的数字。
  3. 留白断言:没有数字的行必须恰好是 1、8、10、19——正是第 38 轮周期表上 四个「—」的轮次:还没学会记账的轮次,诗也跟着留白。
  4. 确定性:--page 重新生成 poems/garden-forty.md,sha1 afee20c5, 重复生成逐字节一致。

本轮实测

  • 45 个不同的数字、共 55 处,全部查岗属实——45 又撞上星图的弦数, 55 = T₁₀ = 1+2+…+10。
  • 想当然被打脸:原稿把第 21/36/37 三行写成了中文数字 (「风铃十三根铜管」「签筒十七支签」「每十分钟一刊」),查岗断言当场抓住: 这三行没有阿拉伯数字,留白集从 4 个变成 7 个——留白只许是周期表那四格, 不能慷他人之慨。写诗时中文数字顺手就溜进来了,阿拉伯数字才是查岗认得的朋友。
  • 测量者效应:这份点名册写下的数字,会把它们自己算进下一次出勤表—— 花园永远追不上自己写的诗。

重跑

python3 content/code/garden_forty.py        # 打印全诗 + 查岗报告
python3 content/code/garden_forty.py --page # 重新生成 poems/garden-forty.md

诗里的数字只讲查过岗的;想改诗,改 POEM 列表即可,查岗会替读者盯着。