第11章 單程遞歸
首長撲向計算機,誰都沒有見過他那麽敏捷,如饑餓的鷹見到地麵上的小雞,令人恐懼。他熟練地移動鼠標,將時間滑標滑過零時點,在滑標進入未來時段的瞬間,一個錯誤提示窗口跳了出來: Stackoverflow...... 白冰從首長手中拿過鼠標,“讓我們啟動錯誤跟蹤程序,Stepbystep吧。” 模擬軟件退回到出錯前,開始分步運行。當現實中的白冰將滑塊移過零時點,鏡像中虛擬的白冰也正在做著同樣的事;錯誤跟蹤程序立刻放大了鏡像中的那台超弦計算機的屏幕,可以看到,在那台虛擬計算機的屏幕上,第二層的虛擬白冰也正在將滑塊移過零時點;於是,錯誤跟蹤程序又放大了第三層虛擬中的那台超弦計算機的屏幕......就這樣,跟蹤程序一層層地深入,每一層的白冰都在將滑塊移過零時點。這是一套依次向下包容的永無休止的魔盒。 “這是遞歸,一種程序自己調用自己的算法,正常情況下,當調用進行到有限的某一層時會得到答案,多層自我調用的程序再逐層按原路返回。而我們現在看到的是無限調用自己、永遠得不到答案的單程遞歸,由於每次調用時都需將上層的現場資料存入堆棧,就造成了剛才看到的堆棧內存溢出,由於是無限遞歸調用,即使超弦計算機的終極容量也會被耗盡的。” “哦。”首長點點頭。 “所以,雖然這個宇宙中的一切過程早在大爆炸發生時就已經決定,但未來對我們來說仍是未知的,對討厭由因果鏈而產生的決定論的人來說,這也是一個安慰吧。” “哦——”首長又點點頭,他哦的這一聲很長很長。