跳到主要內容

程式設計師不再用 Perl 寫程式

《WIRED》雜誌文純分享

程式設計師不再那麼謙遜了,也許那是因為他們停止使用 Perl 寫程式了。

「如果 Perl 有任何壓倒一切的願景或教條,那僅僅是事實:或許根本不應該有程式設計的教條(dogma)。」

Perl 曾幾何時無處不在。或者至少給人這種感覺。在千禧年前後,似乎幾乎每個網站都是建立在這個腳本語言(scripting language)的基礎之上。它處理大量的文字——在語言內部就具備強大而便捷地執行此操作的機制——它甚至被用於生物資訊學(bioinformatics),整理和攪動遺傳數據。根據一份清單,使用 Perl 的公司範圍廣泛:亞馬遜、Google、雅虎、德意志銀行、Akamai、花旗銀行、康卡斯特、摩根士丹利、MozillaCraigslist 的很大一部分就是用 Perl 程式撰寫的。

即使在其使用高峰期,Perl 的受歡迎程度也總是令人有點驚訝。Perl 是一種不可否認的凌亂語言。它經常被稱為「網路的強力膠布」,程式設計師們開玩笑說它是一種「唯寫」(write-only)語言:你用它來寫程式,但很少能(成功地)讀懂它。

Perl 具有一種合併混雜(amalgamated mashup)的性質,所有這些都是為了服務其座右銘:「殊途同歸」(There’s More Than One Way to Do It, TMTOWTDI)。就像英語中有同義詞一樣,Perl 有多種方法可以寫出相同的東西。雖然這在某種程度上是程式語言的常見特徵,但 Perl 似乎想要用它來猛烈衝擊你。舉例來說,有不止一種方法來編寫條件陳述句,從使用傳統的「`if`」到「`unless`」;到在一行中倒著寫一個 `if` 陳述句;甚至是一個涉及問號和冒號的三部分運算子(operator)。我清楚地記得,在 2000 年代初期,有一天我用 Perl 寫了程式碼,而第二天就看不懂自己寫了什麼。

但這種混亂和巴洛克式的結構實際上是故意的,是 Perl 背後更廣泛哲學的一部分。該語言的創作者,拉里·沃爾(Larry Wall),曾受過語言學培訓,他的初衷是與妻子一起成為一名涉及稀有語言的傳教士。沃爾最終走上了不同的道路,並完全投身於程式撰寫。但他對語言如何運作的深刻思考從未離開過他。

沃爾的觀點似乎是,對語言純潔性(linguistic purity)的癡迷被高估了。英語有來自法語、希臘語、德語,甚至阿卡德語(Akkadian)的詞彙,背叛了它蜿蜒曲折的歷史和多源的起源。我們拆分不定詞並懸掛修飾語。我們有雙關語,無論是故意的還是無意的。那麼,當涉及到如何寫一個 `if` 陳述句時,一點點的古怪又算得了什麼呢?沃爾將演化視為語言發展過程的一部分。這裡正在發生一個有機的過程,最終的產物不一定需要井然有序。因此,無論是一種旨在編寫腳本還是十四行詩的語言,對語言建構採取一種廣泛且不帶評判的態度至關重要。

Perl 有它的「殊途同歸」來做事,而英語有其眾多的風格和靈活的本質,這種本質可以容納從烹飪食譜到 俳句、購物清單到福克納的一切。這就是真正開放式(open-ended)事物的標誌。正如沃爾曾經說過的:「我堅信一種語言……應該是一種無道德的藝術媒介。」如果 Perl 有任何壓倒一切的願景或教條,那僅僅是事實:或許根本不應該有程式設計的教條。

澄清一下,我從來都不是 Perl 的深度用戶。它的語法和凌亂對我來說蓋過了它的力量,當我接觸到 Python 井然有序的結構時,我奔向了那個語言,再也沒有真正回頭。這或許暗示了這種語言失色的原因。即使在 1998 年,在其鼎盛時期,就有人提出 Perl 的 臃腫可能導致人們渴望轉向更「乾淨」的東西。無論原因為何,Perl 不再像過去那樣受歡迎了。

儘管如此,我發現自己又回到了這種奇怪的語言,我認為這是因為它核心的 謙遜。當我們認識到我們的世界比我們可能理解的更複雜時,我們需要謙遜,即使或尤其當涉及到我們自己製造的大型技術系統(AI,咳咳)。在一個充滿例外、 邊緣案例(edge cases)和猖獗複雜性的世界中,單一的綜合理論或模型是行不通的。我們需要緩慢、摸索的方法,而 Perl 演化出來的 多元主義可以指引我們方向。

Perl 甚至可以教導我們關於我們自己。如果我必須選擇一種與 Perl 距離最遠的語言,那可能是 Lisp。Lisp 大約在 1960 年開發出來,它優雅、結構上幾乎是數學化的。正如對它的定義所描述的那樣:「軟體的馬克士威方程組」(Maxwell’s Equations of Software)——只是為了讓您對其深奧(esotericism)有所了解。Perl 當然不是那樣。它是有機的、有時令人惱火。換句話說,儘管它很凌亂,但它是一種屬於人民的語言。

這就是程式語言的本質:它們實際上是為人而設計的;它們不能僅僅是能被機器解析(parsable)的。在經典教科書《電腦程式的結構與解釋》(Structure and Interpretation of Computer Programs)中,作者們明確指出:「因此,程式必須是寫給人讀的,而只是附帶地寫給機器執行的。」是的,笑話說 Perl 是「唯寫語言」的——但你總是可以看出它是人類寫出來的。

我承認,Perl 的復興是不太可能的。但也許 Perl 的教訓是永恆的。它要求我們在程式語言及其設計方面,少一些珍視(precious)——多一些人性。只有這樣,我們才有可能彌合我們與機器之間的鴻溝。

本文作者Samuel Arbesman是《程式碼的魔力》(The Magic of Code)一書的作者,也是 Lux Capital 的駐場科學家。

WIRED  2025年7月28日

https://www.wired.com/story/programmers-arent-humble-anymore-nobody-codes-in-perl/






留言

這個網誌中的熱門文章

OpenAI 執行長最愛科幻小說 《徐徐誘惑》中文化版本

OpenAI 執行長奧特曼最喜歡的科幻小說  《徐徐誘惑》(The Gentle Seduction)是 Marc Stiegler 於 1989 年寫下的短篇(收錄於同名短篇小說集),被譽為「友善AI」敘事的先驅之作,兼顧科技概念與文學韻味。Stiegler 以極其溫柔的筆觸,充滿哲思地藏進了對人性、科技與愛最深的信任。描繪人類如何在科技奇點的浪潮中,既不失本真,又擁抱變遷,不靠恐懼驅動,而以愛、記憶與謹慎的勇氣面對。以簡潔而詩意的筆觸描繪人類與超級智能(或宇宙級智慧)之間充滿溫柔誘惑且不可逆的融合過程,女主角對科技從一開始的抗拒卻漸漸隱隱被吸引的矛盾心理,情感張力強令人心顫。 近乎禪意的科技寓言:「人類」如何在不知不覺中,被未來擁抱、轉化——沒有劇烈的掙扎,沒有悲壯的告別,只有持續的好奇、探索,與一次又一次的索求。意識的擴張、感知的昇華、存在形式的徹底解放,全都匯聚成一曲橫跨銀河的交響。近乎神聖的「意識之歌」,文字將科技、意識、音樂與宇宙存在融為一體。最後從宇宙尺度驟然聚焦於一人一念。女主角完成了一場跨越千年的自我延續,讀者則猶如體驗一場跨越星海的朝聖之旅。 The Gentle Seduction原文出處: https://eyeofmidas.com/scifi/Stiegler_GentleSeduction.pdf 以下為AI中文化的短篇小說,不才double check: ─────※─────※─────※─────※ ─────※─────※─────※─────  他與電腦為伍;她則與樹木為伴,還有那些在山巒側翼紮根綻放的花朵。 她很訝異他竟對自己感興趣。他那麼聰明,而她卻如此……平凡。但他確實有趣——總能說出些新鮮又獨特的話;而且他人很好。 她 25 歲。他年紀較長,快滿 33 了;有時,傑克看起來的確非常蒼老。 有一天,他們在山邊灰濛濛的霧氣中漫步。雷尼爾(Rainier)山腳下的這片森林,在霧中泛著光,滿目是濃郁鮮亮的綠意。就在這一天,他向她講述了未來——那個他正在親手打造的未來。 過去每當他談起未來,眼中總會閃過一絲狂熱。但此刻,他的目光卻異常銳利而專注,彷彿這一次,他真的能將未來看得一清二楚。他說話的語氣,就像在描述眼前小徑上垂掛的一片葉子那般清晰自然——葉脈分明,毋庸置疑。 「妳聽過『奇點』(Singulari...

京晨科技 NUUO

2015年01月30日 京晨科公告營運長異動 :營運長施錦昌退休 鼎新電腦 官網資料:特助施錦昌提到:「以前未使用ERP系統時,需不斷手動調整資訊,不但人工成本高,錯誤率也高,讓人很難信任報表資料。所以之前在進行一些重大決策時,常常會有擔憂決策錯誤的壓力。但自導入ERP再加EasyFlow之後,此類問題改良許多。」 以下摘編自:《遠見雜誌》2013年2月號/臺大創聯會 (NTUEA)2013年12月25日臉書/《工商時報》2015年01月05日 【京晨科技NUUO Leaders】 董事長 楊文彬 :台大大氣系,高職念五年、大學念七年畢業,暱稱Killer(殺手) 總經理 黃建峯 (暱稱卡通)、研發副總 黃建山 (暱稱卡弟,意指卡通的弟弟),台大資工系友兄弟檔兩人求學時序:附中、台大、研究所。 曾創業失敗 念大三時,BBCall和黑金剛手機剛竄紅,楊文彬早上在大氣系打工當助理,閒暇時就跑去賣手機,很快就開通訊行,第一個月大賺40萬,短短半年開了五家店,人家喚他「少年楊董」,叱吒一時。但 成功來的太快 ,讓他 志得意滿,到處遊山玩水 ,直到警覺不對,財務已出現漏洞, 被倒帳幾百萬 。「我那時真的非常落魄,出現人生中第一根白髮,還得兼好幾份工、送報還債,但失敗經驗讓我學到 管理 及 財務 的重要,」楊文彬說。 安控門外漢 找到市場利基 2001年楊文彬拿出30萬與好朋友們創業,就是希望 用自己喜歡的方式 燃燒熱情 ,其間創立電腦設計、安控軟體、影像處理、遊戲、網通技術等五家公司。其中最成功的京晨科技 (NUUO Inc.),利用B2B行銷全球安全監控的高端市場。從創業的第一天起,京晨就非常務實。切入少有頂尖人才想做、卻又年年成長的監控安防產業,加上不閉門造車、積極聆聽市場聲音,這些都是成功的主要原因。     楊文彬是 業務 出身,創業時的第一個想法是要先從產業著手,只要找到對的產業,你才有在裡面的生存空間,就好比釣魚一樣,要釣到魚,前提是那個池塘裡,要有夠多的魚。等到決定市場了,接下來的問題,才是要推出什麼產品,用什麼方式、什麼技術,去做產品,甚至開拓市場。就在這個思考邏輯下,當時的三人小組,在密集開會後,得到一個結論,就是京晨科需要的是 高成長、高毛利 ,但不要太大的產業。要高毛利、高成長,是考量到當時的京...

美國教授史考特·蓋洛威〈美國如何摧毀年輕人的未來〉

【臺灣沒掉隊,美國年輕人也很悶〈美國如何搞砸年輕人的未來〉】 臺灣出版過《世界並不仁慈,但也不會虧待你》的美國紐約大學商學院教授史考特·蓋洛威(Scott Galloway)在HBO談話節目《馬赫脫口秀》直言:「會建議年輕人『追隨熱情』的人,已經超有錢。」他認為重點是要找出自己的才能,投入自己擅長的工作,甚至是無聊的產業,因為你才有機會做到頂尖!「該熱衷於什麼? 賺很多錢,這樣就可以好好照顧家庭。」 蓋洛威相當有舞台魅力,演說常博得滿堂彩,比方他在TED以〈美國如何搞砸年輕人的未來〉為題,透過豐富的圖表傳達理念,批評美國社會現況,拿出統計數據證明教育、住房和醫療成本不斷上升,而富人和年長者則受益於政府政策和稅制減免,卻不利年輕人。在批評美國政治上,因為選舉制度,老人選出的人更老,更諷掌權者的華盛頓特區是「行屍走肉的死亡之地」。他提出解決方案建議:(1)提高最低工資至每小時25美元。(2)實施負所得稅。(3)改革社會保障,以需要為準而非年齡。(4)學前教育與技職教育的投資和普及。(5)拆分大型科技公司並促進產業競爭。他強調美國政府要將年輕人的身心健康和職涯發展擺在最前面,最後提了個大哉問:「我們真的愛我們的孩子嗎?」 蓋洛威雖貴為名校教授,卻有粗獷外型,且不拘小節常口出不雅詞為年輕人發聲,美國25歲至45歲的人對他的觀點有相當大的共嗚。 在《世界並不仁慈》The Algebra of Happiness(2019年)後,2024年4月出版的新書是The Algebra of Wealth,畢竟要人別追隨熱情,就要更有說服力,「財富的代數」是由四個部分組成的方程式:財富 = 聚焦 +(斯多葛哲學 x 時間 x 多元投資)。 ⓵聚焦「主要是為了賺取收入,而且需要相當數量的收入」。 應該專注於才能而不是熱情,並盡可能提高加薪潛力。 ⓶斯多葛哲學(Stoicism)指的是「過有意識的、節制的生活」在生活和工作都要訂定計劃並遵守紀律。省錢很重要,也關係到品格的強化。透過持續存錢來培養「儲蓄肌肉」。 擁抱毅力,將情緒與財務決策分開。 ⓷時間是「真正的貨幣,是與生俱來的唯一資產。」 現在就可以開始行動,複利需要時間。每多一天都很重要,財富會隨著時間的推移而累積,耐心和持久戰比想賺快錢更切實際。「複利」就像「愛因斯坦的信用卡」—宇宙中最強大的力量。 ⓸多元投資是指了解市場、投資基礎知...