您現在的位置是:首頁 > 網頁遊戲首頁網頁遊戲

中文程式語言新探之“〇”和“々”

簡介在開發過程中,筆者發現,字母語言的以下兩個語法現象是中文所不具備的:字母區分大小寫,首字母大寫的詞彙可用來表示類等物件,全大寫詞彙可用來表示常量,而漢字基本上沒有大小寫之分名詞區分單複數,最常見的是單數名詞加 s 變成複數名詞,而中文名詞基

零的老字怎麼寫

近日,華為官宣將於不久之後推出全新程式語言。按照華為“不鳴則已、一鳴驚人”的個性,基於鴻蒙日益完善的生態,這款語言很有可能會以極快的速度取得成功。

程式語言眾多,但長久以來,中國人在這一領域基本上處於缺位的狀態。現在,這種局面很快就要被打破了,對中國程式設計師來說,這無疑是一件振奮人心的事情。

華為終端公司官微就釋出新語言的訊息發了一條微博,並詢問網友有何期待。在網友評論中可以發現,期望支援中文程式設計的呼聲很高。

筆者知道,華為新語言絕無可能支援中文程式設計(中文程式設計的含義很廣,在這裡的意思是“支援使用中文關鍵字或保留字進行程式設計”),但筆者對中文程式設計的未來信心十足,原因有以下幾點(恕不詳細說明):

“胡虜無百年之運”,胡語將隨著胡虜的衰弱而衰落

中國重新登頂已勢不可擋,

胡語

在程式設計領域的獨立王國不可能被人民群眾長久容忍

中文程式設計的普及猶如九年義務教育的普及,將推動中國 ICT 行業真正進入自主自由創造創新的王國

筆者及眾多中文程式設計倡導者的實踐證明,中文程式設計可用、易用且好用

中國人開發的主流程式語言已計日可待,取代胡語程式設計的廣受歡迎的中文程式語言還會遠嗎?

言歸正傳,下面將給大家介紹“〇”和“々”在中文程式語言中的妙用。

為什麼要引入“〇”和“々”?

筆者從事程式語言中文化工作已有近三年時間。在開發過程中,筆者發現,字母語言的以下兩個語法現象是中文所不具備的:

字母區分大小寫,首字母大寫的詞彙可用來表示類等物件,全大寫詞彙可用來表示常量,而漢字基本上沒有大小寫之分

名詞區分單複數,最常見的是單數名詞加 s 變成複數名詞,而中文名詞基本上也沒有單複數之分

這兩個語法現象對程式語言具有十分重要的意義,因為程式語言是形式化語言,能從形式上區分不同概念是基本要求。第一個語法的本質是區分模型與實體(即柏拉圖的理念與現實),第二個語法的本質是區分集合與元素。為了在中文程式語言中實現類似的區分,筆者想了一些辦法,比如:規定類名以“類”結尾,變數名前加“所有”或“諸”等表示複數(當然中文還有其他表示複數的辦法,比如以“們”結尾,但不能一體適用),甚至想過加字尾 s 來表示複數。但是,這些辦法要麼不是形式化規則,要麼不倫不類,一直不能令人滿意。

幸運的是,“念念不忘、必有迴響”,這兩天筆者終於想到一個自認為完美的解決方案——引入不是符號但勝似符號的“〇”和“々”。

如何使用“〇”和“々”

這兩個字都是標準漢字,完全可以用作識別符號或識別符號的一部分;與此同時,他們在外觀上與符號無異,所以可以賦予其形式或語法上的特別意義。

”的一個意義是“零”,在

正式公文

中表示年份時會用到這個字,比如“二〇二一”年。在程式語言中,可以利用它來模擬“首字母大寫”的規則:

類 〇學員 函 __初始化__(自身, 姓名, 年齡): 自身。姓名 = 姓名 自身。年齡 = 年齡 函 自我介紹(自身): 列印(“大家好,我叫” + 自身。姓名)學員 = 〇學員(“老吳”, 66)學員。自我介紹()

我們可以規定,帶有“〇”字首的識別符號表示類或原型名等(能夠派生例項的物件)。在中國人的觀念裡,〇(太極)生一,一生二,二生三,三生萬物,這與它在程式語言裡的意義也是相通的。

在筆者使用的搜狗輸入法中,鍵入“ling”就能很方便地打出“〇”。不過,筆者自定義鍵入字母o就會跳出這個字。在腦子裡默唸或在討論時要讀出這個字時,可以讀作“ling”、“歐”(這是我腦子裡的讀法)、“圈”或不讀出來。在 IDE 裡,輸入“〇”之後就會跳出當前

作用域

中的所有類名,這是不是很合乎我們的需要?

”原本是重複字元的替代字元,在前電腦時代的手寫文字中經常出現,但現在的中文正式出版物中已不使用,不過日文的正式出版物中仍然使用。在程式語言裡,我們借用它來表示複數概念可謂順理成章:

老師々 = [‘張三’,‘李四’, ‘王五’]老師 = 老師々[0]

這個字沒有讀音,筆者建議直接讀作s。要在當前的輸入法中敲出來,也許不那麼容易。比如在搜狗輸入法中,需要鍵入“v1”,然後翻頁,再鍵入“c”。不過,輸入法一般都提供自定義字詞輸入功能。筆者自定義鍵入“s”(複數的拼音首字母)時,輸出來的第一個字元為“々”,所以也很方便。

最後,對於程式語言中的全域性常量,筆者擬採用“

常_xxxx

”的形式來表示,例如:

# PATH = “D:/grasspy”常_路徑 = “D:/grasspy”

以上就是筆者對於中文程式語言的一些最新思索。有同道者,歡迎與我交流。

Top