中文編程Z語言設計思想
來自專欄中文編程7 人贊了文章
中文編程Z語言設計思想
無需多說,進行計算機編程的第一步是掌握編程語言。計算機剛出現用0和1的機器語言,後來用一些英文字母作為助記符號的彙編語言,再到後來人們創造了Fortran、Lisp、C、Pascal、C++、Java等等高級語言。編程的難度是越來越低,掌握編程的人數越來越多。
現在的編程語言有幾百種,絕大部分是用英文字母編寫的語言。但是在國內也有少部分開發了用中文編程的語言,比如易語言、O語言、習語言。用中文編程的好處對於我們中國人來說更容易掌握。但是這些中文編程語言都沒有發展起來。
我認為一個成功的中文編程必須做到如下幾點。
第一,當前主流的編程語言對於普通人還是太難了,即使是最簡單的Javascript、Python、PHP等,也都有太多的知識點,比如閉包、作用域、位運算、迭代器、繼承。為了讓行業外人士能夠容易掌握,中文編程一定不能照搬主流語言,而要對它們進行簡化,去除複雜的知識點。
第二,要「信達雅」。好的外文的翻譯要「信達雅」,好的中文編程也要「信達雅」,像一篇文章一樣,少用符號,多用文字,要讓人容易讀,容易理解。
第三,不要有太多嵌套。
為了實現以上目標,我基於當前編程語言,在更高一級的層次,用新的理論和方法設計實現了Z語言。下面以C#和Z語言對比解釋一下Z語言的設計思路。
C#語言中實現用控制台列印」你好」的程序是
控制台.列印(「你好」);
Z語言實現列印「你好」的程序是這樣寫的
控制台列印「你好」
Z語言程序沒有點號,沒有括弧,末尾沒有分號,看起來和一般的中文句子沒有兩樣,中國人理解起來非常容易。
『.』運算符是取類的成員,括弧是表示它的內部是參數。它們的作用是提示C#編譯器程序要調用類「控制台」的方法「列印」,調用的參數是「你好」。Z編譯器是根據「控制台」和「列印」兩個詞的關係確定調用類「控制台」的方法「列印」,調用的參數是「你好」。
C#取成員用『.』號,比如
T.年齡
Z語言是這樣
T的年齡
用「的」代替點運算符,和漢語語法保持一致。
去除new
new是新建一個示例成員,Z語言不需要
C#程序
P=new點(0,0);
Z語言程序
P=點(0,0)
函數
C#語言是 函數名稱+參數列表
Z語言是 函數部分1+參數1+函數部分2+參數2+...
函數部分和參數間隔開,函數部分必須至少有1個,函數參數可以有0個或若干個。比如定義這樣一個函數
C#
打開文件(文件,讀寫方式)
Z語言
以(讀寫方式)打開(文件)
省略主語
枚舉類可以省略主語
比如枚舉enum讀寫方式{只讀方式,只寫方式,讀寫方式}
C#調用
打開文件(文件W,讀寫方式.只讀方式)
Z語言調用
以(只讀方式)打開(文件W)
C#是形式語言,根據程序中的符號確定程序的語義,Z語言程序中的符號很少,編譯只能根據詞的關係確定程序的語義。
目前Z語言整體開發完成,可以正確編譯運行,但是離正式產品還有很遠距離。它還需要人員嚴格測試編譯器,編寫功能較完整的類庫,開發編輯工具,各種文檔轎車的編寫。
我相信未來必定是類自然編程語言的天下,人人都會用它編程程序,更好的利用計算機為工作生活服務。Z語言目前是在.NET平台上,但是它以後會移植到JAVA平台、嵌入式設備、物聯網上。未來懂編程的人數將會遠遠超過現在的幾百萬,可以達到幾千萬人。現在只是剛起步,它的理論實踐還需要非常多的研究,這正是我們能大展拳腳的地方。
推薦閱讀:
※Google計算思維名師領銜,開啟少兒編程三維立體式教學新體驗 | Codeus產品
※第20屆北京科技交流學術月——全國古箏普及教育教學論壇在京召開
※科技每日推送
※啟路科技 | 乾貨滿滿的Power BI Workshop
※2018-05-12