国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
還能用中文寫代碼?東北話:我先來整一個
2021-05-28 17:04

還能用中文寫代碼?東北話:我先來整一個

本文來自微信公眾號:果殼(ID:Guokr42),作者:一座頭鯨

“會Python的人,工作都不會太差”。同事都在學(xué)編程,而我依舊卡在了英語這一關(guān)……面對滿屏連不成句子的英文字,我就想問一問發(fā)明編程的人:fine,thank you,and you? “好優(yōu)美的中國話”在編程屆可以擁有姓名嗎?

滿屏英文丨《Linux內(nèi)核代碼情景分析》

說真的, “從入門到放棄”的隊伍里應(yīng)該有不少人是被這密密麻麻的字母勸退的。想比數(shù)的大小,都得寫好幾行代碼,直接輸入“a和b誰更大”不好嗎?

等等……中文編程還真行,更貼心的東北話、上海話甚至是文言文編程都有了,那接下來是入門還是放棄,就得看你自己了!

東北話編程:我先來整一個

GitHub上有一個名為“dongbei”的項目,由用戶zhanyong-wang開發(fā)。

東北話編程教程丨zhanyong-wan/dongbei/GitHub

東北話編程把編程里的英文全部替換成了東北話,嘮嘮=print,沒毛病=true,整完了=end……

舉個例子,如果你想用常規(guī)的編程語言在屏幕上輸出一句話,以前得在編程軟件里寫成print(“編程可真難!”),這要是換成東北話編程,直接寫成嘮嘮:“編程可真難!”。

再舉個例子。如果想設(shè)置一個x,你在東北話編程里可以把x叫成老王,“老王走四步”就表示x+4,“老王稍五步”則表示x-5。

再比如想比兩個數(shù)的大小,x叫老王,y叫老張。誰更大就輸出“某某比較厲害”,相等就輸出“一樣厲害”。寫成程序就是表格的左邊:

看,我用上畢生所學(xué)的東北話知識,總算是學(xué)廢了一點dongbei。

既然是東北話編程,那不得整個東北特色小程序?想來想去我整了個計算豬肉燉粉條所需食材數(shù)目的小程序:

假設(shè)有一家菜單里只有豬肉燉粉條的飯店,店主需要根據(jù)顧客人數(shù)和食量準(zhǔn)備食材。讓我們來品味一下這種沙雕(親切)的程序。

整點豬又燉粉條丨作者供圖

程序的代碼也是真·東北話代碼丨作者供圖

“裝”表示把后面的內(nèi)容賦值給前面,相當(dāng)于“=”;

“整”則代表運行,比如“咋整”下面就定義了“吃多少”這個部分是如何運行的,“整完了”就代表運行完了;

判斷兩者是否相等變成了“尋思xxx跟xxx一樣一樣的?”;

用 “要行嘞就/要不行嘞就……”來判斷不同的條件。

如果你會一點編程,看到這似曾相識的格式,是不是想拍案而起——這不就是Python嘛!沒錯,dongbei正是基于Python3開發(fā)的,你甚至可以嘗試把它反推成英文。

基于這個思路,各地的方言都有機會加入“中文編程”的版圖中來。這不,緊接著還有人開發(fā)了基于上海方言詞匯的編程語言。

儂上海言話講得來伐?丨cabuliwallah/shanghai-from-dongbei/GitHub

上面的編程方式雖然是用中文,但整個語法基于英文編程,看起來還是令人費解。2019年發(fā)布的文言文編程項目“文言/wenyan?lang”更進一步,讓編程看起來真的像古文了。

文言文編程:吾有一術(shù)

上邊用文言文編程表述5+3=8,下邊是輸出斐波那契數(shù)列的示例

丨wenyan-lang/wenyan/GitHub

相比直接的關(guān)鍵詞替換,文言文編程的書寫更接近自然語言。同樣的1+2,既可以寫“加二於一”,也可以寫“加一以二”,這兩種寫法都會被識別,并通過通過NLP(自然語言處理)的算法,翻譯成JavaScript和Python。

文言語言編程入門教程。這還得考文言文能力丨wy-lang

目前,該項目在GitHub上獲得17k星星——要知道在4億個倉庫里只有不到800個有此殊榮。文言文編程項目不僅有了更全面的配套工具(被命名為“文淵閣”開發(fā)環(huán)境和包管理器),還有了詳細(xì)的官方教程——當(dāng)然也是文言文版的。可以說這個文言文編程項目已經(jīng)非常完善了。

如此看來,中文編程大有前途?

中文編程:請叫我古董

早期國內(nèi)的英文教育并不是特別普及,而學(xué)習(xí)編程的過程涉及到很多資料與技術(shù)文檔——這些大多都是英文的,有些人就想著:不如把整個編程都給漢化,這樣學(xué)起來、用起來,都更方便。后來出現(xiàn)了以“易語言”為代表的中文編程工具。

2000年前的中文編程丨中國知網(wǎng)截圖

中文編程甚至有過專門的圖書教程丨《中文編程從入門到精通》

其實,“本土化編程語言”不止在中國被提出了。通過關(guān)鍵詞替換等方法,人們可以將編程里的文字替換成中文、俄文甚至是Emoji。

Emoji編程丨EmojiCode.org

既然群眾呼聲這么高、實踐這么早,為什么本土化的編程語言仍然不是主流呢?

程序語言的本質(zhì)不是任何自然語言:不是中文也不是英語。它是根據(jù)特定語法規(guī)則拼起來一堆符號,更像人造的語言。編程用的是Java、C語言或者Python,都是這種“人造語言”,只不過它們所使用的“符號”恰好是英文單詞。

但機器也沒法直接看懂這些這些“人造語言”,這時就需要編譯器了。它會像翻譯員一樣,將人類所寫的最接近自然語言的高級編程語言,一層層“翻譯”到低級的機器語言,直到二進制編碼——0和1。

左邊是我們寫的代碼,經(jīng)過一步步“翻譯”最終成右邊機器可以識別的二進制碼丨codeforwin

現(xiàn)在通用的編程語言,只是恰好用英語單詞作為符號。那用漢字來表示這些符號,也就是用中文編程,不是也挺好嗎?

的確可以,但或許沒有必要。

非英語編程的壁壘之一在于,底層的語言被英語世界占領(lǐng)——接近硬件層面的語言,用的符號還是英語單詞。這就意味著,如果將中文作為接口搭載在主流編程語言上,會多一次“將漢字翻譯成英文字”的過程,增加了機器處理的時間,犧牲了效率。

同時,如果直接使用中文作為編程符號,會降低世界范圍內(nèi)的通用性。畢竟,編程語言不只是關(guān)鍵字,更包括第三方庫、學(xué)習(xí)材料等技術(shù)生態(tài)。如果你用中文版我用英文版,交流起來恐怕是雞同鴨講。

總而言之,雖然以英文字為基礎(chǔ)的編程語言學(xué)起來要花時間,但綜合權(quán)衡效率和難易度,程序員還是更傾向于使用主流語言。

這么說來,中文編程只能用來娛樂?倒也不是。中文編程可以讓想了解編程的人了解基礎(chǔ)的編程思路,還可以用于培養(yǎng)編程思維。針對孩子的編程語言scratch,甚至沒有一個單詞。

Scratch圖形化編程,只需要拖拽各個模塊就可以讓右邊的貓貓做出特定的動作,這種編程更像是學(xué)習(xí)流程圖丨Wikimedia Commons

如果把“實用”換成“有趣”來看這個問題的話,中文編程確實給大家提供了一些新鮮的角度,或許也吸引了一批人加入了編程的行列??!

參考文獻

[1] https://github.com/zhanyong-wan/dongbei

[2] https://github.com/cabuliwallah/shanghai-from-dongbei

[3] https://ide.wy-lang.org/

[4] https://medium.com/@rats/java-basics-how-java-is-understood-by-your-machine-57161a212b85

[5]大連易翔軟件開發(fā)有限公司.《中文編程·從入門到精通》.海洋出版社.2011.

本文來自微信公眾號:果殼(ID:Guokr42),作者:一座頭鯨

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
文言文編程火了,可我完全學(xué)不懂
以后再也不用面向Google編程了
重磅!OpenAI升級Codex,直接將書面語言轉(zhuǎn)為計算機代碼
假如計算機是中國人發(fā)明的,那代碼是不是該這樣寫了
中國程序員開發(fā)的神奇網(wǎng)站:變量命名神器!
程序員現(xiàn)在可以使用Emoji表情符號編程
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服