維利有幾分倉皇。他看到尤利婭家的那個小鬼真的走遠之后,才跑了起來。
剛才那個小鬼撞到他身上的時候,他真的嚇壞了。他可是盡了最大的努力,才控制住自己的。
“不能這樣下去了……”
維利這么想著,快速奔跑,很快就離開村子邊緣,蹲在大路旁邊。煙塵滾滾而至。維利站了起來,揮動雙手。
汽笛轟鳴。在剎車聲與爆炸般的揚塵之中,一個黑影停在維利面前。隨后是調(diào)整攝像頭焦距的聲音。過了半晌,一個粗獷的聲音才說道:“維利?你為什么在這里?”
“以諾……”維利聲音顫抖:“我好害怕啊,以諾?!?p> 維利靠著重型工人們過活,自然知道他們的日常。他知道,以諾這個時候很有可能會路過這條路。
“嘿!你有什么好怕怕的?”以諾毫不在乎。
維利尖叫:“昨天可是你讓我推那這家伙出去的!是你啊!你不能不管我!不然的話……不然的話……”維利說著,發(fā)出哭聲:“以諾大哥!我……”
他一開始的時候,確實是想要討好以諾,這才答應他“整一下‘約格’”的。以諾是重型機械里最大方的一個。最重要的是,以諾很懶,經(jīng)常雇傭其他工人裝卸。只要能和以諾交好,那維利就可以不愁工作了。
但維利是真的沒想到,那個“約格”……不,那個“山”好像真的很厲害。
他居然真的能夠戰(zhàn)勝一個武者!
以諾語氣也有幾分緊張:“他發(fā)現(xiàn)你了?不對???當時周圍都是我們這邊的人……他們都參與了,不可能去告發(fā)我們的?!?p> “尤利婭家的那個小崽子啊!”維利尖叫。
“尤基?他看到了?”以諾犯了難。他確實覺得尤基這個玩意很煩,如果不是尤基,說不定尤利婭就接受他了——甚至向山都是尤基挖出來的。
“他剛才走在街上,撞了我一下!他撞了我一下!”維利尖叫:“那個小崽子肯定是看到了!不然的話……不然的話……”
“靠,就撞了一下?”以諾啼笑皆非:“就這點小事?”
“什么叫‘小事’?我推了那個怪物一把?。 本S利大喊:“那條狗都輸了,我不可能贏的!”
“那只是運氣好!”以諾惡狠狠的說道:“只是大老爺好心腸而已!呸,什么贏了。他不是還倒在地上說‘我輸了我輸了’什么的嗎?這種懦夫……呸!”
“你不能不管我!”維利尖叫:“我們把那個小孩子騙出來吧!不管是碾碎了還是拆成零件賣了……”
“嘿!你瘋了!”以諾嚇了一跳。他可是真的打算要和尤利婭在一起的。以諾知道自己的性格,他守不住秘密。他要是動了尤基,就沒法和尤利婭在一起了。
以諾本來就被這個家伙糾纏得有點煩了。但他又覺得讓這個家伙就這樣行動,尤基出了事,說不定會牽連到自己。以諾便說道:“多大點事……這樣吧,我今天本來就打算到城里樂一樂。這樣,我請你看點好看的,怎么樣?”
“好看的?”維利有些迷惘:“是什么?競技會?還是新游戲?”
“比那個刺激多了……來來,上車!”
以諾身上沒有駕駛位。他將貨斗略略傾斜,讓維利自己扒上去。
塵土飛揚。
…………………………………………………………………………
“一個真正的程序員,他的編程從裸機開始!”
“一個真正的程序員,不存在面向對象與面向過程之分,也不存在強類型與類型不安全之別,從機器語言到匯編器到編譯器到無數(shù)高級應用程序,他無所不通!”
某些回憶閃閃發(fā)光。向山已經(jīng)記不清這是什么人對他說的了。不過,某些“知識”成分的東西卻在提醒他,那個人是歷史上有名的程序員,是曾經(jīng)決定了歷史面貌的人。
向山和“這個人”有很深的交情,所以他學到了關于編程的“一切”。
這東西的本質是“數(shù)學”。
編程,是語言學,也是數(shù)學。
或者說,語言學就是一種數(shù)學。
二戰(zhàn)結束的前后,數(shù)學家們開辟出了一個被稱作“字問題”的全新領域。在這個領域中,一些數(shù)學概念被套上“文字”的外衣,用代數(shù)結構產(chǎn)生的形式自然的表明著它們自身。數(shù)學家們嘗試使用語言學的規(guī)則玩弄數(shù)學。
1944年,美國邏輯學家,人工智能先驅埃米爾·波斯特就證明了字問題具備不可判定性。
而在1947年,安德烈·馬爾可夫之子,阿納托利·馬爾可夫也不知曉波斯特工作的前提下,做出了一樣的證明。
“語言”之中,存在“不可判定性問題”。這是第一個并非由人類提出、并非出現(xiàn)在計算科學領域的不可判定性問題。
而與此同時,語言學家也沿著相反的方向,抵達了相同的境界。
如果說現(xiàn)代語言學起源自費爾迪南·德·索緒爾,那么諾姆·喬姆斯基就是索緒爾之后的高峰。而喬姆斯基除了作為語言學家、哲學家與社會學家廣為人知之外,他還可以算是一個數(shù)學家。
他對語言學的研究,甚至被錄入了數(shù)學史之中。
“上下文無關語言的語法”和“正則語言的語法”這兩個由喬姆斯基創(chuàng)造的領域,在計算機科學理論之中,也有相當?shù)牡匚弧?p> 遺傳學家們同樣尊敬喬姆斯基,他們認為,喬姆斯基對語言的研究,或許可以成為破解遺傳密碼的鑰匙——他們可以反推出隱藏在遺傳信息中的、“造物主的語言”。
或者說,遺傳化學所遵循的“程序”。
只要對相關領域的數(shù)學有足夠深的研究,那么創(chuàng)造一門獨有的語言,就不是太困難的事情。
真正難的,是在保證語言對人晦澀的同時,對機器簡單易懂。
越是晦澀的語言,在內(nèi)功上的優(yōu)勢就越大。俠客就是依靠內(nèi)功在網(wǎng)絡之中、在這個世界隱藏自己的?!罢Z言”是他們所有防線的根。他們大腦的語言機能,與自己的內(nèi)功高度協(xié)同。
大腦所熟悉的語言越晦澀,內(nèi)力就越是無跡可尋。
如若單純?yōu)榱藘?nèi)功上的優(yōu)勢,就讓計算機的運行效率下降,那就本末倒置了。
Lisp就做不到“晦澀”這一點。它太接近數(shù)學了,以至于只要知道了它的入門知識,厲害的數(shù)學家就能知曉它的用法。
C語言是“具備自然語言特征的高級語言”,它的使用人數(shù)實在是太多了,所以這一門語言呈現(xiàn)出一種“野蠻生長”的狀況,甚至在很短的時間內(nèi)出現(xiàn)了“語言的流變”現(xiàn)象——這一點就很接近自然語言的演化了。如果世界上出現(xiàn)兩塊網(wǎng)絡相對封閉的區(qū)域,那么C語言甚至有可能演化出“方言”。
向山不管是哪邊都很熟悉。
在內(nèi)功的領域,這就一法通、萬法通了。
向山覺得,自己應該還認識那么一個人。這個人或許名聲沒有那么響亮,但他絕對站在了人類認知的邊界上。
他從自己的朋友們身上學到了很多東西——應該是這樣。
但仔細想想,這似乎又是反常識的。在向山的印象之中,一個人,最多也就能夠在一個領域進行深入的學習,其他部分都只能淺嘗輒止。人類的知識,早就擴張到了“個體”無法掌握全貌的狀態(tài)。
他不應該又懂工程學,又精通編程,數(shù)學水平也很高才對。就算他真的和那么厲害的人是好朋友吧,也沒道理說他就能夠學會這些朋友的長處。
愛因斯坦晚年最好的朋友是最頂級的數(shù)學家哥德爾。但這段交情也沒有讓愛因斯坦的數(shù)學水平提升到哥德爾的層次——至少在真正的數(shù)學家眼中,阿爾伯特·愛因斯坦先生的數(shù)學水平仍舊是“作為物理學家夠用了”的層次。
但是……事情就是這么奇怪的發(fā)生了。
向山肢解了終端的操作系統(tǒng)。他用自己的編譯器替換了原本的編譯器。
不管是下里巴人的Java、僅僅是根基的C、如古老詩歌一般唯美而孤獨的Perl、如同現(xiàn)代詩歌一般激情的Ruby、易學難精但大成之后近乎神明的Python,還是最貼近數(shù)學也最貼近造物的Lips,甚至是它們的后繼者,都不適合用來維系內(nèi)功的存在。
無他,但因它們都是為了“讓別人能夠使用”而被創(chuàng)造出來的東西。
這些語言,天生就是為了讓人讀懂而存在的。
阻止其他人讀懂它們的,只有智商。
哪怕C語言已經(jīng)形成了“方言”,但“方言”對于保密來說,仍舊不夠。
對于俠客來說,好的語言,可以為他們隱藏自身意圖,也能在防火墻被瓦解、加密被破解、封裝被撕開、任督小周天被打斷之后,給予最后的反擊機會。
而你不能寄希望于你的敵人是個傻子——你得想個辦法,讓敵人就算足夠聰明,但缺了關鍵信息就短時間內(nèi)無法用意識觸及你程序之內(nèi)流轉不息的代碼。
每一個流派的內(nèi)功,都對應了特殊的編譯器,有特殊的語法規(guī)范和命名方式。它們所編譯的高級語言,與過去的高級語言在設計思路上大相庭徑。
這是“為了讓人難以理解”而創(chuàng)造出來的語言。
如果說過去的程序員在試圖創(chuàng)造一種“最好的語言”,好到所有人都會想要用它,那么俠客們所創(chuàng)造的語言,就是完全相反的,“最差的語言”。
更難能可貴的是,你還得保證機器可以接受這種“差”語言,
而在這一點上,向山有著一種絕對的自信。最開始的時候,他也不知道這種自信來自哪里。
在花了兩個小時重寫編譯器之后,他想起了更多的知識。
他內(nèi)功的根基,是一種無名的、只在極小圈子里傳遞的語言。
很少有人知道這個語言,它根本就沒有被廣泛的流傳開。只有很少的人見識過它,而能夠學習它、使用它的就更少了。光是學習這一門語言,精力成本就高過學習一門外語。而用這門語言編程,難度更是相當于用一門外語寫出頂尖的詩——這門外語還得和你的母語屬于完全不同的語系。
“話說回來,如果真的有這么難的話……我到底是怎么學會的???”向山喃喃自語:“我到底是什么人?。课以趺催@么厲害???”
在完成了編譯器的重寫之后,向山仿佛是解鎖了更多的知識。數(shù)據(jù)飛快的從他直連大腦的芯片中輸出。代碼覆蓋代碼,終端屏幕上出現(xiàn)不規(guī)則色塊,然后很快關機重啟。
這并不是從無到有的創(chuàng)作。向山很久以前,似乎也經(jīng)歷過這個場景,很是類似。
或許因為記憶的殘缺,他不能完全復現(xiàn)那時的技術。但就算這樣,他多半也有了立命的本錢。
這一門無名語言,絕對是世界上最TM難用的語言。
但在俠客的視角上,也是最強的語言之一。
![](https://ccstatic-1252317822.file.myqcloud.com/portraitimg/2020-02-12/5e43464e70fe7.jpeg)
吾道長不孤
關于這兩天更新章節(jié)中技術細節(jié)理解偏差的問題,確實是我有錯。我寫《走進修仙》的時候,參考的均是學界大佬所寫的、頗有口碑的科普書。而這書的部分描述,一半來自我自己看的編程入門書,一半是我在碼農(nóng)社區(qū)潛水看到的、覺得“臥槽這個描述so cool!”的結果。畢竟我不是專業(yè)的碼農(nóng),其中難免存在“把修辭當做事實來理解”的部分。且現(xiàn)在看到,我自己看的編程入門手冊也未必正式【而且還不一定真看懂了】。關于本書中學科史、學科小故事之類的部分,我想沒有問題,但關于目前編程技術細節(jié)確實存在一定的問題。部分描述我會在專業(yè)讀者的建議下逐漸修改。 我的本意,一直是“你聽我在這兒吹這個學科有多dio,若是您覺得有趣,自己找途徑學習且學有所成了,那是你的造化也是我的功德”。對我來說,在書中堆砌技術細節(jié),是營造“真實感”與“驚異感”的一種方式。若是對其中某些細節(jié)產(chǎn)生了迷惑,還請點開章評。諸位專業(yè)的讀者朋友自然是比我更強的。若是覺得我的故事有趣,所以想去學點東西,那便是再好不過了。至于鄙人這樣的二把刀極客虛構的設定,還請不要盡信。