奇怪的語(yǔ)言又增加了,用互聯(lián)網(wǎng)黑話(huà)寫(xiě)代碼!
夢(mèng)晨 曉查 發(fā)自 凹非寺
量子位 報(bào)道 | 公眾號(hào) QbitAI
從程序員code到產(chǎn)品經(jīng)理PPT的生態(tài)閉環(huán),終于打通了。
如果編程語(yǔ)言里都是“賦能”、“反哺”、“抓手”,會(huì)是啥樣?
我們不妨先來(lái)寫(xiě)個(gè)程序看看:
賦能 堆疊_fib = 抓手(x) {
細(xì)分 (x 對(duì)齊 0) {
0;
} 路徑 {
細(xì)分 (x 對(duì)齊 1) {
1;
} 路徑 {
堆疊_fib(x - 1) 聯(lián)動(dòng) 堆疊_fib(x - 2);
}
}
};
堆疊_fib(10);
怎么樣,你看懂了嗎?
這段程序可不是亂寫(xiě)的,定義函數(shù)、條件判斷一氣呵成,訓(xùn)練有素,還真的能跑通:

相信有高手已經(jīng)看懂了,以上是一段求斐波那契數(shù)列的遞歸程序,只不過(guò)加入世界上最好的編程語(yǔ)言——PPT的一些語(yǔ)法而已。
如果非要把上面的程序翻譯成“人話(huà)”,那就是:
let fibonacci = fn(x) {
if (x == 0) {
0
} else {
if (x == 1) {
return 1;
} else {
fibonacci(x - 1) + fibonacci(x - 2);
}
}
};
是不是一下子豁然開(kāi)朗?
好好的程序,為什么要用“非人話(huà)”來(lái)寫(xiě)呢?
其實(shí),這是一位國(guó)內(nèi)程序員開(kāi)發(fā)的互聯(lián)網(wǎng)黑話(huà)編程語(yǔ)言,英文名叫PUA Language。
這個(gè)語(yǔ)言成功將兩大部門(mén)員工對(duì)齊:非技術(shù)部門(mén)能快速掌握編程要領(lǐng),程序員也能獲得每天PPT匯報(bào)的快感。
看到這么有趣的編程方式,程序員表示自己的工作都高大上起來(lái)了,畢竟自己每天都要賦能幾十個(gè)對(duì)象。

那么,PUA Lang該怎么寫(xiě)程序?
編程“打法”
一般編程語(yǔ)言需要的基本功能,PUA Lang一應(yīng)俱全。
整個(gè)語(yǔ)法的表達(dá)堪稱(chēng)“信達(dá)雅”:if對(duì)應(yīng)細(xì)分,while對(duì)應(yīng)閉環(huán),let對(duì)應(yīng)賦能,fn對(duì)應(yīng)抓手,數(shù)組是組合拳……
Monkey | pua-lang | Explanation |
if | 細(xì)分 | "specialization" |
else | 路徑 | "pathway" |
while | 閉環(huán) | "closed loop" |
true | 三七五 | "3.75", a passing performance evalulation result |
false | 三二五 | "3.25", a failing performance evalulation result |
let | 賦能 | "enable", in a fancy way |
fn | 抓手 | "handle", as in getting a handle on things |
return | 反哺 | "repay", used in Alibaba as a general term for feedback in systems |
Array | 組合拳 | "combo move"; not yet a word in the language |
Hash | 載體 | "carrier"; not yet a word in the language |
= | 對(duì)齊 | "align" |
+ | 聯(lián)動(dòng) | "linkage" |
- | 差異 | "difference" |
/ | 傾斜 | "tilt" |
puts | 輸出 | "output" |
quit | 淘汰 | "eliminate" |
35歲老員工看到這里,恐怕已經(jīng)瑟瑟發(fā)抖了:“三七五”是true,“三二五”是false,那種被KPI支配的恐懼,一股互聯(lián)網(wǎng)大廠內(nèi)卷的氣息頓時(shí)撲鼻而來(lái)。
難怪英文名叫PUA Lang啊。
看完整個(gè)語(yǔ)法后,我覺(jué)得:
這位程序員已經(jīng)成功以GitHub為中臺(tái),以開(kāi)源為打法,迅速打出一套組合拳,成功挖掘了公關(guān)作為新增用戶(hù),形成了一套全新的方法論,為編程產(chǎn)業(yè)賦能。
落地一下
大廠的業(yè)務(wù)布局,講究一個(gè)風(fēng)口,什么是風(fēng)口呢?
細(xì)分(騙(投資人) 對(duì)齊 三七五 {
輸出("風(fēng)口");
}
用圖來(lái)解釋就是:

有了投資才剛剛開(kāi)始,畢竟不能落地的項(xiàng)目是得不到資源傾斜,,于是就有:

這里面概念有點(diǎn)多,我們慢慢來(lái)解釋?zhuān)紫仁?strong style="color: rgb(0, 153, 127);">高空和落地:

打磨要是說(shuō)白了也容易理解:

好不容易到了快下班的點(diǎn),領(lǐng)導(dǎo)卻發(fā)來(lái)最新指示:要進(jìn)行產(chǎn)品升級(jí)。
升級(jí)這個(gè)抓手系統(tǒng)里還沒(méi)有啊,趕緊拜托對(duì)面工位的P7幫忙實(shí)現(xiàn)一個(gè)。
到了晚上9點(diǎn),終于寫(xiě)出來(lái)了:

看不懂,先運(yùn)行一下試試吧:

原來(lái)這個(gè)升級(jí),就是價(jià)格翻倍的意思,早說(shuō)啊。

這是什么鬼
PUA Language這個(gè)項(xiàng)目,其實(shí)是基于另一個(gè)Rust實(shí)現(xiàn)的Monkey語(yǔ)言項(xiàng)目rs-monkey-lang修改而來(lái)。
Monkey語(yǔ)言是《Writing An Interpreter In Go》一書(shū)中介紹的,專(zhuān)門(mén)用來(lái)學(xué)習(xí)解釋器工作原理的語(yǔ)言。

各位在惡搞互聯(lián)網(wǎng)黑話(huà)的同時(shí),不妨看一下它的源碼,還可以順便學(xué)習(xí)一下解釋器。
PUA Language目前還在開(kāi)發(fā)初期階段,只有一些基本功能,但已經(jīng)獲得了1.7k標(biāo)星,網(wǎng)友也紛紛熱情地在Issue里開(kāi)起了腦洞。

作為Bug編寫(xiě)員,異常處理一定要有:

還有一位不愿意透露姓名的網(wǎng)友提出了更多高級(jí)功能:

除了功能以外,整體風(fēng)格也要一致才行:

開(kāi)源協(xié)議也要改一下:

最后,考考大家的黑話(huà)水平,請(qǐng)看這段代碼,能猜出聚焦這個(gè)抓手解決了什么痛點(diǎn)嗎?

項(xiàng)目地址:
https://github.com/flaneur2020/pua-lang
在線(xiàn)解釋器:
https://flaneur2020.github.io/pua-lang/
點(diǎn)這里??關(guān)注我,記得標(biāo)星呀~
長(zhǎng)按進(jìn)入小程序,進(jìn)行打卡簽到 (更多精彩值得期待……)
最近熱文: 明明有 Windows 11,為什么還要用國(guó)產(chǎn)操作系統(tǒng)? 雷軍,扎克伯格,Linus 等巨佬的辦公桌 外包干了三年,廢的一踏糊涂 ! 在 Win11 上打開(kāi) C 盤(pán)后:界面全變了 ! 牛逼!程序員給鴻星爾克寫(xiě)了一個(gè)720°全景看鞋展廳 2T技術(shù)資源大放送!包括但不限于:C/C++,Linux,Python,Java,人工智能,考研,軟考,英語(yǔ),等等。在公眾號(hào)內(nèi)回復(fù)「資源」,即可免費(fèi)獲取!回復(fù)「社群」,可以邀請(qǐng)你加入讀者群! ??給個(gè)「在看」,是對(duì)我最大的支持??


