官术网_书友最值得收藏!

第2版 代序

要有光

—《世界需要一種什么樣的語言》節選—

什么才是決定語言的未來的思想呢?或者我們也可以換個角度來提出這個問題:世界需要一種什么樣的語言?

特性眾多、適應性強,就是將來語言的特點嗎?我們知道,現在的C#與Java都在向這一目標前進。與特定的系統相關,就是語言的出路嗎?例如,曾經的VC++,以及它面向不同平臺的版本。當然,在類似的領域中,還有C,以及匯編……

這些列舉其實都是在特定環境下的特定語言,所不同的無非是環境的大小。這其實也是程序員的心病:我們到底選Windows平臺,還是Java平臺,或者Linux系統,再或者是……我們總是在不同的廠商及其支持的平臺中選擇,而最終這種選擇又決定了我們所使用的語言。這與喜好無關,也與語言的好壞無關,不過是一種趨利的選擇罷了。所以也許你在使用著的只是一種“并不那么‘好’”,以及并不能令你那么開心的編程語言。你越發辛勤地工作,越發地為這些語言搖旗鼓噪,你也就離語言的真相越來越遠。

當然,這也不過是一種假設。但是,真相不都是從假設開始的嗎?

語言有些很純粹,有些則以混雜著稱。如果編程世界只有一種語言,無論它何等復雜,也必因毫無比較而顯得足夠純粹。所以只有在多種語言之間進行比較,才會有純粹或混雜這樣的效果:純粹與混雜總是以一種或多種分類法為背景來描述的。

因此我們了解這些類屬概念的標準、原則,也就回溯到了語言的本質:它是什么、怎么樣,以及如何工作。在這本書中,將這些分類回溯到三種極端的對立:命令式與說明式,動態與靜態,串行與并行。分離它們,并揭示將它們混沌一物的方法與過程,如歷經涅槃。在這一經歷中,這本書就是我的所得。

多年以來,我在我所看不見的黑暗與看得見的夢境中追尋著答案。這本書是我最終的結論,或結論面前的最后一層表象:我們需要從純化的語言中領悟到編程的本質,并以混雜的語言來創造我們的世界。我看到:局部的、純化的語言可能帶來獨特的性質,而從全局來看,世界是因為混雜而變得有聲有色的。如果上帝不說“要有光”,那么我們將不能了解世象之表;而世象有了表面,便有了混雜的色彩,我們便看不見光之外的一切事物。我們依賴于光明,而事實是光明遮住了黑暗。

如同你現在正在使用的那一種、兩種或更多種語言,阻礙了你看到你的未來。

周愛民

2009年1月于本書精簡版序

主站蜘蛛池模板: 青岛市| 普洱| 德保县| 长泰县| 富顺县| 静宁县| 海口市| 遂宁市| 论坛| 秀山| 甘德县| 西畴县| 洛南县| 加查县| 巫山县| 汝南县| 武平县| 巴彦淖尔市| 张家港市| 进贤县| 阿勒泰市| 山丹县| 鸡东县| 长武县| 平阴县| 仙居县| 临夏市| 盐津县| 兖州市| 中山市| 丰县| 会泽县| 邹平县| 黄平县| 锡林浩特市| 泸水县| 宝应县| 洪湖市| 新营市| 全椒县| 海口市|