December 18,2007
薰襄樓:災星妲己
災星妲己
〈災星妲己〉是我投稿2007年倪匡科幻獎的預備作品之一(實際上投稿的是〈食星體〉)。這篇故事裡發生的事情都已在現代科技能企及的範疇內,攔截彗星的技術細節也沒什麼好提的,故事的主題,其實是在講述編程員撰寫程式時的一些心境——這和在下身為一個軟體工程師當然是脫不了干係囉。
我們平常所使用的電腦程式,目的大多是要對物理世界造成影響:即便是你我眼前的個人電腦,它們也正透過螢幕、揚聲器來產生讓我們的感官接收的物理訊息。這負責維持與物理世界聯繫的部份,便被稱為「硬體」,而代表程式本質的「軟體」則透過一系列定義良好的介面來與硬體互動。
〈災星妲己〉是我投稿2007年倪匡科幻獎的預備作品之一(實際上投稿的是〈食星體〉)。這篇故事裡發生的事情都已在現代科技能企及的範疇內,攔截彗星的技術細節也沒什麼好提的,故事的主題,其實是在講述編程員撰寫程式時的一些心境——這和在下身為一個軟體工程師當然是脫不了干係囉。
我們平常所使用的電腦程式,目的大多是要對物理世界造成影響:即便是你我眼前的個人電腦,它們也正透過螢幕、揚聲器來產生讓我們的感官接收的物理訊息。這負責維持與物理世界聯繫的部份,便被稱為「硬體」,而代表程式本質的「軟體」則透過一系列定義良好的介面來與硬體互動。
所謂介面,就像是用黑布幔遮掩的窗口。當軟體程式將指令透過窗口遞交出去,它們並不知道、也沒必要知道對面到底是什麼。因此,介面的另一側也可能是另一個軟體,冒充成硬體來運作,介面內側的軟體卻毫無知悉。像這樣的軟體,我們通常會稱之為「模擬程式」。電腦程式或多或少都在模仿真實世界,而所謂的「模擬程式」則是其中之最。
通常一個模擬系統是由好幾層軟體元件——由簡單到複雜、由具體到抽象——所組成,其間分隔以介面。這些介面的內外都是軟體。但是,如果我們在氣象模擬、天體模擬之類的模擬系統中,選擇一層介面,讓你將介面外的軟體換成一套「硬體」——某種神奇的裝置,能讓概念化的符號與規則能對物理世界造成實質影響——那麼將會發生什麼事?這樣的一種介面,我們會稱呼它為什麼?
我想,我們會稱呼其為「魔法」。
我並不喜歡將魔法「程式化」的概念。傳統的施法語言乃是自然語言,字詞的意義會隨語境和使用者的思緒而改變,是以施法者能自由運用字詞的微妙變化來改變法術的實質效果。以撰寫程式用的人造語言來替代自然語言,字詞單調而語法僵直,迫使施法者喪失了當下心隨意轉的潛力,我認為是一種退化。但另一方面,我也不能否認:程式與魔法的確有其相似之處。畢竟程式和魔法一樣,都試圖以基於語言的描述來架構世界的局部樣貌。
彗星撞地球,不過是要提故事背景,合理地需要一個複雜的模擬程式,使編程員自覺到自己正掌控世界的鏡像;這模擬程式又要具有正反兩面的可能性,讓編程員有足夠的動機違反「程式仿真」的原則,製造迷霧去掩蓋真實。「程式是幻術、是魔法」,正是要在這樣的情境下才能體現。
最後我們來談一下「妲己」這名字是怎麼來的。原本我計畫是要讓一顆小行星來撞地球,上網調查類似題材的小說,發現亞瑟.克拉克有本《The Hammer of God》頗負盛名,故事中將小行星命名為印度的黑女神「迦梨」(Kali)。我就想,在中國神話裡有哪個女神的形象最近似迦梨呢?但中國神話裡兇惡的女神不是很多,比如說西王母、旱魃等,我覺得都不適合。想來想去,還是《封神演義》裡的九尾狐妲己最能同時具備兇惡與豔麗的形象。為了使這名字更為適切,我還決定將撞擊物從小行星改為彗星,好強調彗星散發出來彗尾會給人「狐尾」的印象。撞擊地點也刻意扯上關係——故事中沒有明講,預設是在河南開封附近,距離朝歌遺址不遠。
不過依照國際天文學會的慣例,小行星可由發現者取名,但彗星通常會直接以發現者命名。所以故事中撞地球的彗星本來是不可能獲命名為「妲己」或「迦梨」之類的名字,我是勉強用「媒體任意冠上名稱」的理由來搪塞過去的啦。
通常一個模擬系統是由好幾層軟體元件——由簡單到複雜、由具體到抽象——所組成,其間分隔以介面。這些介面的內外都是軟體。但是,如果我們在氣象模擬、天體模擬之類的模擬系統中,選擇一層介面,讓你將介面外的軟體換成一套「硬體」——某種神奇的裝置,能讓概念化的符號與規則能對物理世界造成實質影響——那麼將會發生什麼事?這樣的一種介面,我們會稱呼它為什麼?
我想,我們會稱呼其為「魔法」。
我並不喜歡將魔法「程式化」的概念。傳統的施法語言乃是自然語言,字詞的意義會隨語境和使用者的思緒而改變,是以施法者能自由運用字詞的微妙變化來改變法術的實質效果。以撰寫程式用的人造語言來替代自然語言,字詞單調而語法僵直,迫使施法者喪失了當下心隨意轉的潛力,我認為是一種退化。但另一方面,我也不能否認:程式與魔法的確有其相似之處。畢竟程式和魔法一樣,都試圖以基於語言的描述來架構世界的局部樣貌。
彗星撞地球,不過是要提故事背景,合理地需要一個複雜的模擬程式,使編程員自覺到自己正掌控世界的鏡像;這模擬程式又要具有正反兩面的可能性,讓編程員有足夠的動機違反「程式仿真」的原則,製造迷霧去掩蓋真實。「程式是幻術、是魔法」,正是要在這樣的情境下才能體現。
最後我們來談一下「妲己」這名字是怎麼來的。原本我計畫是要讓一顆小行星來撞地球,上網調查類似題材的小說,發現亞瑟.克拉克有本《The Hammer of God》頗負盛名,故事中將小行星命名為印度的黑女神「迦梨」(Kali)。我就想,在中國神話裡有哪個女神的形象最近似迦梨呢?但中國神話裡兇惡的女神不是很多,比如說西王母、旱魃等,我覺得都不適合。想來想去,還是《封神演義》裡的九尾狐妲己最能同時具備兇惡與豔麗的形象。為了使這名字更為適切,我還決定將撞擊物從小行星改為彗星,好強調彗星散發出來彗尾會給人「狐尾」的印象。撞擊地點也刻意扯上關係——故事中沒有明講,預設是在河南開封附近,距離朝歌遺址不遠。
不過依照國際天文學會的慣例,小行星可由發現者取名,但彗星通常會直接以發現者命名。所以故事中撞地球的彗星本來是不可能獲命名為「妲己」或「迦梨」之類的名字,我是勉強用「媒體任意冠上名稱」的理由來搪塞過去的啦。
引用URL
http://cgi.blog.roodo.com/trackback/4674933
回應文章 

!?
由本文的連結進去可以看到
由部落格旁邊進去薰襄樓首頁卻看不到
...我聞到改版的味道
Posted by 龔劍煒
at December 24,2007 21:19
啊,被你發現了——
沒錯,目前薰襄樓正在改版中。不過短期內應該是有新文兩邊都要發才對,我去把舊版那邊補上好了。
Posted by 采豫
at December 30,2007 22:54