第130章 中文代碼的浪漫

投票推薦 加入書籤 小說報錯

  1980年秋,京城,紅星軟體研究所。

  窗外的銀杏葉黃了,金燦燦地鋪了一地。

  而在一間名為「倉頡」的絕密會議室里,氣氛卻像是一場沒有硝煙的辯論賽。

  「荒謬!簡直是荒謬!」

  拍桌子的是一位來自麻省理工學院的計算機教授,名叫史蒂芬。他是隨同IBM代表團來考察「龍芯」生態的顧問。

  此時,他正指著黑板上的一行行方塊字,臉漲得通紅。

  「計算機科學的基礎是數學,而數學的通用語言是英語和希臘字母!你們試圖用……用這種象形文字來寫代碼?這是對科學的褻瀆!這是在開歷史的倒車!」

  史蒂芬的憤怒代表了當時西方學術界的主流觀點。

  在他們看來,ASCII碼是計算機世界的聖經。所有的程式語言,從彙編到C,從Fortran到Pascal,無一不是基於英語邏輯構建的。

  想用中文編程?那不就是把if換成如果,把else換成否則嗎?那是脫褲子放屁,毫無意義的漢化!

  「史蒂芬教授,請坐。」

  蘇正坐在會議桌的對面,神色淡然。他手裡端著紫砂茶杯,輕輕吹了吹浮在水面的茶葉。

  「您說計算機語言必須是英語,是因為計算機是你們發明的。」

  蘇正放下茶杯,目光變得深邃,「但現在,晶片是我們造的,架構是我們定的。為什麼規則……還要聽你們的?」

  「這不僅是規則的問題,是效率!」

  史蒂芬反駁道,「英文單詞有空格分隔,邏輯清晰。而中文……連詞與詞的界限都模糊不清。用中文寫編譯器,光是詞法分析就能把CPU累死!」

  「是嗎?」

  蘇正笑了。

  他轉頭看向身邊的葉心儀,「心儀,給教授演示一下,什麼叫……中文的效率。」

  葉心儀點點頭,打開了那台連接著大屏幕的「龍芯」工作站。

  屏幕漆黑。

  隨著她手指敲擊,一行行亮白色的漢字代碼,如同瀑布般流淌下來。

  那不是簡單的漢化。

  那是一種全新的、從未見過的語法結構。

  【程序名:滄海一聲笑】

  【定義:天地(屏幕),日月(循環),眾生(數組)】

  入:主函數

  設:天地之寬= 1024

  設:眾生之數= 100

  觀:眾生皆苦(初始化數組)

  若:眾生[某]>慾念

  則:斬(刪除)

  或者:

  渡(移動)

  終

  嘆:時光荏苒(主循環)

  復:天地

  繪:眾生

  止

  出

  隨著葉心儀的輸入,現場變得鴉雀無聲。

  那些漢字,不再是冷冰冰的指令。

  它們組合在一起,竟然產生了一種奇異的韻律感。

  不像是在寫代碼,倒像是在寫一首……古詩?或者一篇駢文?

  「這……這是什麼鬼東西?」史蒂芬看得目瞪口呆,「『觀』?『若』?『嘆』?這些字在編譯器里代表什麼?」

  「『觀』代表遍歷(Iterate)。」

  葉心儀一邊敲擊鍵盤,一邊冷冷地解釋,「『若』是條件判斷,『嘆』是無限循環,『渡』是內存拷貝。」

  「這有什麼意義?不就是換了個名字嗎?」

  「意義在於……信息密度。」

  蘇正站起身,走到黑板前,拿起粉筆畫了一個方框。

  「在英文裡,描述一個『遍歷數組並刪除符合條件的元素』的邏輯,你需要寫for,寫if,寫花括號,寫一堆冗長的變量名。」

  「但在中文裡。」

  蘇正指著屏幕上那寥寥幾行字,「一個字,就是一個世界。」


  「中文是二維的象形文字。每一個漢字,都攜帶了比英文單詞多得多的語義信息。在我們的『倉頡』編譯器里,一個漢字指令,可以直接映射為龍芯架構底層的『宏指令』。」

  蘇正的聲音提高了幾分:

  「也就是說,同樣的功能,英文代碼需要寫100行,編譯後生成500條機器碼。」

  「而中文代碼,只需要寫20行,編譯後……只有300條機器碼!」

  「不可能!」史蒂芬大喊,「編譯器的效率不可能相差這麼大!」

  「跑個分吧。」

  蘇正做了個請的手勢。

  測試項目:快速傅立葉變換(FFT)。

  左邊屏幕:C語言版本,由史蒂芬親自編寫,優化到了極致。

  右邊屏幕:倉頡語言版本,由葉心儀現場賦詩一首。

  「開始!」

  隨著回車鍵按下。

  兩台配置完全相同的「龍芯」電腦開始瘋狂運轉。

  進度條飛快地向前沖。

  一秒。

  兩秒。

  滴!

  右邊的屏幕率先彈出了結果:耗時:1.24秒。

  而左邊的屏幕,還在在那兒轉圈。

  直到1.8秒後,才彈出結果。

  1.24 vs 1.8。

  快了接近50%!

  「這……這不科學……」

  史蒂芬癱坐在椅子上,滿臉冷汗,「為什麼?為什麼會這麼快?」

  「因為『意境』。」

  葉心儀合上電腦,淡淡地說道,「C語言關注的是『怎麼做』(How),它需要一步步教傻瓜CPU去搬磚。」

  「而倉頡語言關注的是『做什麼』(What)。中文的語法結構,天生就包含了對整體邏輯的描述。我們的編譯器能讀懂代碼的『意境』,從而直接調用CPU內部的並行計算單元。」

  她指了指腦子:

  「在龍芯的架構里,我們預埋了專門處理『漢字邏輯』的微指令集。這,就是主場優勢。」

  蘇正看著徹底沉默的西方代表團,心中湧起一股強烈的快意。

  這就是文化自信。

  誰說代碼必須是英文的?

  誰說邏輯必須是線性的?

  幾千年前,老祖宗用文言文能描述宇宙萬物。今天,我們用漢字代碼,一樣能構建數字世界!

  而且,構建得更美,更快,更強!

  「蘇先生……」

  許久,IBM的代表終於開口了,語氣中少了幾分傲慢,多了幾分敬畏,「這套……『倉頡』語言,能授權給我們嗎?」

  「當然。」

  蘇正微笑著點頭,「不過,要想學倉頡,得先學《說文解字》。我想,各位回去後,得給你們的程式設計師報個中文補習班了。」

  「另外……」

  蘇正指了指會議室牆上掛著的一幅字:【道生一,一生二,二生三,三生萬物】。

  「這就是二進位的起源。其實,在這個領域,我們才是祖師爺。」

  ……

  送走外賓後,會議室里爆發出了一陣歡呼。

  年輕的華夏程式設計師們激動得熱淚盈眶。

  曾幾何時,他們為了學編程,不得不抱著厚厚的英漢詞典,死記硬背那些枯燥的單詞。Integer,Float,Pointer……每一個單詞都是一道門檻,攔住了無數有天賦但英語不好的華夏少年。

  但今天。

  那個玻璃天花板,碎了。

  「蘇部長!我想試試!」

  一個戴著眼鏡的男生衝到電腦前,「我想用倉頡寫個……寫個貪吃蛇!」

  「寫!」

  蘇正大手一揮,「不僅要寫貪吃蛇,還要寫作業系統,寫辦公軟體,寫遊戲!從今天起,我們的屏幕上,不僅要有漢字的界面,還要有漢字的靈魂!」


  葉心儀站在蘇正身邊,看著那些興奮的年輕人。

  「你把這群孩子放出來了。」她輕聲說道,「你知道這意味著什麼嗎?」

  「意味著什麼?」

  「意味著以後,西方黑客想破解我們的代碼,得先去考個中文六級。」

  葉心儀難得地開了個玩笑,「而且,他們永遠也讀不懂,為什麼我們在變量名里藏了一句『落霞與孤鶩齊飛』。」

  蘇正大笑。

  是啊,這就是中文代碼的浪漫。

  它是理性的,也是感性的。它是邏輯的,也是詩意的。

  它讓冰冷的矽基晶片,第一次擁有了溫度。

  「心儀。」

  蘇正收起笑容,看向窗外,「地基打好了,柱子立起來了。接下來,該蓋房子了。」

  「你是說……」

  「圖形界面。」

  蘇正從口袋裡掏出那個從矽谷帶回來的簡陋滑鼠。

  「有了倉頡語言的高效率,我們終於可以在這顆算力還不夠強大的晶片上,跑起來那個……真正屬於未來的界面了。」

  「下一步,我們要讓視窗……提前十年,在華夏誕生。」

  ……

章節目錄