整理 | 蘇宓
從機器語言到組合語言,再到當前主流的高級程式語言,程式語言歷經近百年的演變,幫助程式設計師不斷降低計算機世界的學習難度,極大地提升了程式設計效率。如今我們得此便捷的背後,離不開無數先驅的卓越貢獻。
據外媒 The Register 報道,組合語言的發明者 Kathleen Booth 教授去世,享年 100 歲。

Kathleen Booth 教授生平
Kathleen Booth 是一位非常傳奇的女性,也是一名頂尖的電腦科學家。不過,當我們走近了解其學生生涯的經歷時,我們驚訝於這位為計算機軟硬體做出重要貢獻的科學家,並非是計算機專業出身。
Kathleen Booth 於 1922 年 7 月 9 日出生於英國伍斯特郡這座城市。1944 年,Kathleen Booth 在倫敦大學皇家霍洛威學院獲得了數學學士學位。1950 年,獲得了應用數學博士學位。
從 1944 年到 1946 年,Kathleen Booth 在皇家飛機研究所擔任初級科學官,這是英國範堡羅的一個研究機構。兩年後,她就職於伯貝克學院,先是擔任研究助理,後來成為講師,然後是研究員。
在此期間,Kathleen Booth 還曾在英國橡膠生產商研究協會 (BRPRA) 工作,在那裡她遇到了數學家和物理學家安德魯·唐納德·布斯並與之共事,後者後來成為了她的丈夫。

來源:https://www.dcs.bbk.ac.uk/site/assets/files/1029/50yearsofcomputing.pdf

在伯貝克學院建造計算機
當然,這裡不得不提一下安德魯·唐納德·布斯。
在伯貝克學院,計算機研究主要是由安德魯·布斯進行的。安德魯·布斯之前在伯明翰大學做 X 射線晶體學研究,其中便包括了需要做大量的計算,這也讓他更為輕鬆地走上了製造計算機的道路。
此後,安德魯·布斯在 BRPRA 做了一段時間的研究物理學家,在那裡他開始了 ARC 的工作,即自動中繼計算機(有時被稱為自動中繼計算器)。這臺計算機使用紙帶輸入,實際上是一臺作為傅立葉合成器的特殊用途計算機。
1946 年,安德魯·布斯在伯貝克學院擔任 Nuffield 研究員一職。他繼續進行 ARC 的工作,但由於學院沒有房間,而且 BRPRA 正在資助這個項目,所以工作是在 BRPRA 的設施中完成的。就在那時,他遇到了 Kathleen Booth。Kathleen Booth 和另一位研究助理 Xenia Sweeting 幫助安德魯繼續建造ARC,事實上,他們完成了計算機大部分的建造工作。後來,以此為基礎創立了現在的伯貝克電腦科學和資訊系統系。

與約翰·馮·諾依曼靈感的碰撞與火花
在研究過程中,巧合的是,在 1945 年,約翰·馮·諾依曼寫了一份名為《關於 EDVAC 的報告初稿》的檔案,其中他描述了後來被稱為馮-諾依曼的計算機架構。在其中,他定義了計算機的各個部分,特別是程序儲存在計算機的記憶體中。由於這個原因,它有時也被稱為儲存程序計算機。
1947 年,通過 Rockefeller 基金會和 BRPRA 的資助,安德魯和 Kathleen Booth 到美國進行了為其 6 個月的深造與交流,那時,他們與馮·諾依曼進行了會面,這次訪問是在紐澤西州普林斯頓的高級研究所進行的。
這次訪問也是布斯夫婦第一次聽說馮·諾伊曼的架構。這促使安德魯重新設計 ARC,在短短 2 個月內設計出機器的中繼部分,得出了有時被稱為 ARC2 的東西。
還是在 1947 年,Kathleen Booth 和他還寫了兩份關於它的報告:《多用途電子數字計算機設計的一般考慮》和《A.R.C.的編碼》。這些報告中的第一份被廣泛傳播,甚至經歷了第二版。在報告中,他們詳細說明了馮-諾依曼結構的機器需要什麼,概述了一些不同的記憶體選項。


發明早期的組合語言
在 1948 年,安德魯和 Kathleen Booth 轉向簡單電子計算機 (SEC),然後是通用電子 X 射線計算機或 APE(X)C。
APE(X)C 設計被英國製表機有限公司商業化並作為 HEC 出售,最終成為 ICL。
除了為第一臺機器構建硬體外,Kathleen Booth 還為 ARC2 和 SEC 機器編寫了所有軟體,在此過程中發明了她所謂的 Contracted Notation。這種語言後來通過進化和其他人的相繼貢獻而被稱為組合語言。
不止於組合語言、初代硬體,Kathleen Booth 和其丈夫還在很早之前便開始了自然語言、神經網路的研究與探索。據其著作的《自動數字計算器》一書中透露,他們分享了截至 1965 年所研究的一些演算法,並運用 NLP 來實現準確的技術翻譯等工作。與此同時,Kathleen Booth 還曾寫了程序來模擬一個神經網路,研究動物識別模式的方式。

一生奉獻於計算機的Kathleen Booth
根據資料顯示,1962 年,布斯夫婦離開伯貝克學院,搬到了加拿大,在世界學術名校薩斯喀徹溫大學工作,而後在 1972 年在 Lakehead 大學工作。她於 1978 年退休。
不過根據論文檢索中發現,Kathleen Booth 和她的兒子 Ian J. M. Booth 博士在 1993 年發表了一篇題為《利用神經網路識別海洋哺乳動物》的論文,當時她應該已經 71 歲了,而且還在繼續努力進行學術研究。
根據外媒報道,Kathleen Booth 於 2022 年 9 月 29 日去世。而她傳奇的一生不僅讓更多的人受益於計算機,也讓眾人敬佩。
Booth 博士(她已故的丈夫)是我 90 年代初在維多利亞大學的工程學教授之一。令人驚訝的是,現代 CPU 仍然使用他(和他的妻子)創建的乘法電路。
毫無疑問,Kathleen Booth 的貢獻,是計算歷史上的一個巨大里程碑。
最後,R.I.P
參考資料:
https://hackaday.com/2018/08/21/kathleen-booth-assembling-early-computers-while-inventing-assembly/
https://news.ycombinator.com/item?id=33384150
https://www.theregister.com/2022/10/29/kathleen_booth_obit/