我被編程語言PUA了!
點擊上方“視學算法”,選擇加"星標"或“置頂”
重磅干貨,第一時間送達
夢晨 曉查 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
從程序員code到產(chǎn)品經(jīng)理PPT的生態(tài)閉環(huán),終于打通了。
如果編程語言里都是“賦能”、“反哺”、“抓手”,會是啥樣?
我們不妨先來寫個程序看看:

怎么樣,你看懂了嗎?
這段程序可不是亂寫的,定義函數(shù)、條件判斷一氣呵成,訓練有素,還真的能跑通:

相信有高手已經(jīng)看懂了,以上是一段求斐波那契數(shù)列的遞歸程序,只不過加入世界上最好的編程語言——PPT的一些語法而已。
如果非要把上面的程序翻譯成“人話”,那就是:

是不是一下子豁然開朗?
好好的程序,為什么要用“非人話”來寫呢?
其實,這是一位國內程序員開發(fā)的互聯(lián)網(wǎng)黑話編程語言,英文名叫PUA Language。
這個語言成功將兩大部門員工對齊:非技術部門能快速掌握編程要領,程序員也能獲得每天PPT匯報的快感。
看到這么有趣的編程方式,程序員表示自己的工作都高大上起來了,畢竟自己每天都要賦能幾十個對象。

那么,PUA Lang該怎么寫程序?
編程“打法”
一般編程語言需要的基本功能,PUA Lang一應俱全。
整個語法的表達堪稱“信達雅”:if對應細分,while對應閉環(huán),let對應賦能,fn對應抓手,數(shù)組是組合拳……
Monkey | pua-lang | Explanation |
if | 細分 | "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 |
= | 對齊 | "align" |
+ | 聯(lián)動 | "linkage" |
- | 差異 | "difference" |
/ | 傾斜 | "tilt" |
puts | 輸出 | "output" |
quit | 淘汰 | "eliminate" |
35歲老員工看到這里,恐怕已經(jīng)瑟瑟發(fā)抖了:“三七五”是true,“三二五”是false,那種被KPI支配的恐懼,一股互聯(lián)網(wǎng)大廠內卷的氣息頓時撲鼻而來。
難怪英文名叫PUA Lang啊。
看完整個語法后,我覺得:
這位程序員已經(jīng)成功以GitHub為中臺,以開源為打法,迅速打出一套組合拳,成功挖掘了公關作為新增用戶,形成了一套全新的方法論,為編程產(chǎn)業(yè)賦能。
落地一下
大廠的業(yè)務布局,講究一個風口,什么是風口呢?

用圖來解釋就是:

有了投資才剛剛開始,畢竟不能落地的項目是得不到資源傾斜,,于是就有:

這里面概念有點多,我們慢慢來解釋,首先是高空和落地:

打磨要是說白了也容易理解:

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

看不懂,先運行一下試試吧:

原來這個升級,就是價格翻倍的意思,早說啊。
這是什么鬼
PUA Language這個項目,其實是基于另一個Rust實現(xiàn)的Monkey語言項目rs-monkey-lang修改而來。
Monkey語言是《Writing An Interpreter In Go》一書中介紹的,專門用來學習解釋器工作原理的語言。

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

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

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

除了功能以外,整體風格也要一致才行:

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

最后,考考大家的黑話水平,請看這段代碼,能猜出聚焦這個抓手解決了什么痛點嗎?

項目地址:
https://github.com/flaneur2020/pua-lang
在線解釋器:
https://flaneur2020.github.io/pua-lang/
— 完 —
本文系網(wǎng)易新聞?網(wǎng)易號特色內容激勵計劃簽約賬號【量子位】原創(chuàng)內容,未經(jīng)賬號授權,禁止隨意轉載。

點個在看 paper不斷!
