電腦的發明讓人類文明從工業時代躍入十倍速的資訊時代。大家耳熟能詳的圖靈、馮·紐曼、夏農都是催生電腦的偉大先驅。然而除了這些大師之外,在IBM擔任程式設計師的巴克斯也是居功厥偉,由於他率先倡議並發明高階語言,才有後來蓬勃發展的各種應用軟體,讓電腦真正改變我們的生活。

Fortran剛發明的年代所使用來編寫程式碼的打孔卡。圖片來源:wikipedia

在進入IBM之前,絕對沒有人認為巴克斯將來會扮演如此重要的角色。他自小就不愛讀書,成績平平,念大學時還因翹課被死當,適逢美國加入二次世界大戰,他索性退學參加陸軍。退伍後他來到紐約,因無一技之長,跑去參加修理電視與收音機的課程,若非授課的教師介紹他去哥倫比亞讀數學系,他恐怕就真的會成為修電視的技師了。

結果這一次巴克斯不但順利大學畢業,還念到碩士。問題是1950年的美國,一個數學碩士除了當老師還真沒啥工作可以做,但巴克斯又不想教書,難道搞了半天還是得修電視?!他想起大四參觀IBM時認識的解說員,於是試著向她打聽工作機會,沒想到還真的得以與部門主管面談,並被錄取當程式設計師。

說穿了這一點也不稀奇。第一台可以跑程式的電腦四年前才發明,根本還沒有電腦相關的科系,還有什麼比有清楚邏輯概念的數學碩士更適合當程式設計師?只是當時的程式都還是機器語言,也就是必須直接描述電腦硬體的二進位位址,而且所有指令只能用0與1的排列組合來表示;寫程式、除錯、修改程式都非常曠日廢時。巴克斯幹了三年後深覺這實在太沒效率,於是在1953年向主管提議發展比較接近人類語言的高階語言,結果獲得老闆大力支持。經過三年多的努力,巴克斯領導的小組終於在1957年推出全世界第一套高階語言 Fortran,以及將之轉譯成機器語言的編譯器。

-----廣告,請繼續往下閱讀-----
IBM 704主機,為第一次運作Fortran語言的電腦主機。圖片來源:wikimedia

Fortran揭櫫了許多現代程式仍在使用的觀念,例如 DO loop、副程式、……等等。更重要的是它開啟了程式語言獨立於電腦硬體之外的可能性,在此之前的機器語言都只能依附於專屬的電腦。Fortran公開之後,其它不同用途的各種高階語言也陸續問世,如今當然又進化到另一番截然不同的光景了,而這一切都得感謝巴克斯將程式語言從電腦硬體的禁臠解放出來;他本人也於1977年榮獲計算機界的最高榮譽──圖靈獎。

延伸閱讀:

  1. 2月14日──第一台電子計算機
  2. 4月30日──夏農誕辰

本文同時收錄於《科學史上的今天:歷史的瞬間,改變世界的起點》,由究竟出版社出版。

-----廣告,請繼續往下閱讀-----
張瑞棋

1987年清華大學工業工程系畢業,1992年取得美國西北大學工業工程碩士。浮沉科技業近二十載後,退休賦閒在家,當了中年大叔才開始寫作,成為泛科學專欄作者。著有《科學史上的今天》一書;個人臉書粉絲頁《科學棋談》。

View Comments