自從有了互聯(lián)網(wǎng),每個(gè)月都會(huì)有編程小白發(fā)貼問,可不可以用中文編程。雖然老遭鄙視,但情有可原,非科班出身的程序員,理解編程就很難了,再加上一直頭痛的英語,更是難上加難。后來支持中文的易語言受到了很多人追捧,就是出于這個(gè)原因。但主流程序員還是不屑一顧。
可從去年年底,事情發(fā)生了變化。一種叫文言文編程語言(wenyan-lang/wenyan)在github上大火,到目前為止有1萬4個(gè)star. 一段文雅的文言文
吾有一數(shù)。曰三。名之曰「甲」。
為是「甲」遍。
吾有一言。曰「「問天地好在?!埂埂?。
云云。
等效于下面的JavaScript
var n = 3;
for (var i = 0; i < n; i++) {
console.log("問天地好在。");
}
同時(shí)還可以轉(zhuǎn)換成Python和Ruby, 最重要的是圖靈完備!但看了官方例程后,小編決定還是學(xué)好英語吧。
吾有一言。曰「「春日宴?!埂?。書之。
有數(shù)九。名之曰「酒數(shù)」。
恆為是。若「酒數(shù)」等於零者乃止也。
吾有三言。曰「「與君」」。曰「酒數(shù)」。
曰「「杯酒??梢愿F歡宴。綠酒一杯歌一遍。」」。書之。
減「酒數(shù)」以一。昔之「酒數(shù)」者。今其是矣云云。
吾有一言。曰「「綠酒千杯腸已爛?!埂?。書之。
不能不說,用這個(gè)語言編程,很酷,但未免有點(diǎn)裝。于是這兩天,一門新的語言dongbei(github: zhanyong-wan/dongbei) 橫空出世, 可以用東北話編程。它的Hello World是這樣的
`嘮嘮:“唉呀,這嘎噠真他媽那啥!”。`
輸出為
唉呀,這嘎噠真他媽那啥!
聲明變量是這樣的
老王裝二
變量引用是這樣的
老張是活雷鋒。
老王是活雷鋒。
老張裝250。
老王裝老張加13。
完整的九九表是這樣的
寫九九表咋整: # 定義套路 寫九九表。
老王從1到9磨嘰:
老張從老王到9磨嘰:
嘮嘮:老王、“*”、老張、“=”、老王乘老張。 # 打印 X*Y=Z
磨嘰完了。
嘮嘮:“”。 # 空一行。
磨嘰完了。
整完了。 # 結(jié)束套路定義。
自從大年三十,春晚沒把我逗笑,沒想到看段代碼把我快笑瘋了。
翠花,上 re。 # 導(dǎo)入 python 的正則表達(dá)式 re 模塊。
老王裝“abd”。
尋思:整re.match(“a.*”,老王)? # 調(diào)用 re.match()。
要行咧就嘮嘮:“OK!”。
要不行咧就嘮嘮:“砸了!”。
稍帶著看了下源代碼,居然只有一個(gè)Python文件,只有1200多行,除了sys,os外只用了re這個(gè)正則表達(dá)式庫。看來是把中文翻譯成python表達(dá)式了,代碼簡(jiǎn)潔標(biāo)準(zhǔn)規(guī)范,據(jù)說作者是來自Google,真是集實(shí)力與搞笑擔(dān)當(dāng)于一身的奇才啊
雖然有了文雅至極和接地氣的兩門中文語言,但還不能說中文編程語言的春天來了。畢竟世界上還有一大半程序員說的是英語,人類無法理解二進(jìn)制,但起碼能理解編程語言。而未來的編程語言應(yīng)該是高效如C,易懂如Ruby,將開發(fā)速度與運(yùn)行速度完美結(jié)合的語言。
當(dāng)然了,現(xiàn)階段最好的語言是PHP