menu trigger
訂閱電子報
訂閱
程式語言還有多久可以活?
2019/04/30
F5 學程式

作者:F5 威

 

你有想過也許有一天,程式語言也會像按鍵手機、滑蓋手機等時代的眼淚,成為過時之物而消失嗎?其實從最早由1跟0組成的機器語言演變到後來有具備英文語法特性的程式語言,它不斷朝越來越接近人類的自然語言方向進化,隨著未來人工智慧的發展,電腦如果也能理解人類的自然語言甚至自己用程式來解決問題,那麼作為人類使用的程式語言可能真的會消失也說不定。

 

林迪效應下的程式語言壽命

 

「林迪效應」最早其實是美國一位學者Albert Goldman在一間叫Lindy's的熟食店觀察喜劇表演與演員之間的關係,寫下一篇名為林迪法則(Lindy's Law)的文章提及的概念,描述一位喜劇演員不斷表演曝光的越多,其演藝生涯越短,因為持續消耗有限的內容會造成觀眾疲乏,最好可以用客串或者其他嘉賓的身分參與不同的表演,才能延長演藝壽命。

 

但後來林迪效應進入數學與科學領域的解釋逐漸演變為:不會自然消亡的事物(如思想、理念、技術等),存活的概率會隨著存在時間成正比。換句話簡單舉例,一部存在100年的經典名著,很有可能繼續流傳下一個一百年。

 

國外一個專門解決數學、統計學以及資料隱私與電腦科學相關問題的顧問團隊老闆 ,John D. Cook曾發表了一篇文章叫 Programming language life expectancy (程式語言的預期壽命),便是使用了後來版本的「林迪效應」來粗略推算幾個程式語言的壽命。

 

 

有趣的是,那篇文章是2017年發佈,距離現在(2019)又經過了兩年的存在時間,也等於再延長了兩年了預期壽命,因此F5重新製作的表格資料,推算的存活時間比當年的資料多了四年。

 

預期壽命只反映出抵抗脆弱的能力

 

也許你會發現哪裡怪怪的,依照林迪效應的推算,後起的「新秀」存在時間一定比較短,所以預期壽命絕對比不上已經存在很久的「前輩」,那還有什麼參考價值?沒錯,就好像你可以說,存在很久的Fortran語言能流傳至今,代表它的影響力之重,確實可能繼續存活好一段時間,但你不能斷言最年輕的Go語言一定最早死。

 

況且「林迪效應」的理論忽略其他外在因素的影響,只考慮存在時間,所以無法考量Go語言作為科技巨擘Google公司所開發具備的兢爭力。因此應該這麼理解:每存在一天,就代表多了一天的生存能力,這種抵抗脆弱能力與生存機率將繼續隨存在時間提高,而不是說存在一天的事物到了第二天就壽命將盡。

 

再者,除非是程式語言停止版本更新或者再也沒有人使用,否則根本無法真正定義程式語言的死亡。

 

無論如何,學習技術都有益無害

 

不管程式語言是否能用林迪效應來定義其持續存在的能力,學習新知都絕對不是浪費時間的事,這點是無庸置疑的。如果要因為程式語言有一天可能會消失,就乾脆什麼都不學,完全是本末倒置的想法,應該思考的是怎麼透過學習來讓自己的存在更有競爭力,這才是在我們有限的生命中,真正重要的課題。