![]()
跨越48年的邏輯閉環(huán):Dijkstra 與 AI 編程的真相
1978年,計(jì)算機(jī)科學(xué)先驅(qū) Edsger Dijkstra 在其編號 EWD667的短文中,曾極具挑釁地預(yù)言了“自然語言編程”的荒謬。即便在 AI 能夠通過對話生成代碼的2026年,他的核心邏輯依然像手術(shù)刀一樣精準(zhǔn)。
一、 Dijkstra 的三個(gè)鋒利預(yù)言
Dijkstra 當(dāng)年的論證可以拆解為三個(gè)支點(diǎn):
符號是特權(quán)而非負(fù)擔(dān): 他認(rèn)為科學(xué)的進(jìn)步史就是“去口頭化”的歷史。從希臘數(shù)學(xué)的停滯到現(xiàn)代科學(xué)的崛起,核心在于人類設(shè)計(jì)了精密的形式化符號系統(tǒng)。拋棄符號回歸語言,本質(zhì)上是文明的倒退。
“自然性”的陷阱: 所謂語言的自然,其實(shí)是因?yàn)樗茏屛覀冚p而易舉地講出那些連自己都沒意識到的矛盾與荒謬。它掩蓋了邏輯的模糊。
接口變寬的代價(jià): 試圖讓機(jī)器“理解”人類的寬泛語言,并不會減輕負(fù)擔(dān),反而會增加溝通成本,導(dǎo)致人類和機(jī)器兩邊都更累。
二、 現(xiàn)代 AI 實(shí)踐的“打臉”與印證
在經(jīng)歷了一段Vibe Coding的甜蜜期后,現(xiàn)在的開發(fā)者正集體撞上 Dijkstra 預(yù)言的墻:
需求幻覺: 你以為說清楚了,AI 也點(diǎn)頭了,但交付時(shí)總差關(guān)鍵點(diǎn)。這印證了:自然語言的模糊性讓你和 AI 都在盲目填補(bǔ)邏輯空白。
架構(gòu)缺失: 自然語言天然缺乏分層、依賴和接口設(shè)計(jì)的約束。AI 生成的代碼往往“能跑但爛”,缺乏長期的工程感。
上下文降智: 當(dāng)對話變長、接口變寬,AI 會被之前的錯(cuò)誤污染,陷入低效的反復(fù)試錯(cuò)。
三、 形式化的回歸:從 Vibe 到 Planned
我們發(fā)現(xiàn),高效的 AI 工作流并不是真的在“說話”,而是在借 AI 之手重建形式化約束。現(xiàn)在的典型流程是:
用語言描述意圖 -->讓 AI 細(xì)化邏輯 -->由人審查并轉(zhuǎn)化為 Spec、測試用例和驗(yàn)收標(biāo)準(zhǔn)。
這個(gè)過程,其實(shí)就是把模糊的自然語言,逐步收窄為 Dijkstra 所推崇的“窄接口”。TDD和持續(xù)集CI/CD在 AI 時(shí)代不再是奢侈品,而是排除 AI “胡說八道”的唯一防線。
四、 AI 真正的角色
Dijkstra 沒預(yù)見到的是:形式化的生產(chǎn)成本可以被 AI 抹平。
以前寫嚴(yán)謹(jǐn)?shù)奈臋n和測試用例太累,大家選擇裸奔;現(xiàn)在,你可以口述意圖,讓 AI 快速生成測試套件和接口定義,人只需要負(fù)責(zé)審核與修正。
AI 編程的可持續(xù)模式并非“語言替代符號”,而是:
自然語言作為低門檻的輸入層;
形式化符號作為高強(qiáng)度的驗(yàn)證層;
AI 作為兩者之間的翻譯橋梁。
Dijkstra 沒說錯(cuò),他只是在半個(gè)世紀(jì)前就看透了:編程的本質(zhì)從來不是說話,而是消除模糊。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.