彼得·約翰·蘭丁(英語:Peter John Landin,1930年6月5日—2009年6月3日[1][2]),英國電腦科學家。他最早提出阿隆佐·邱奇λ演算可以被用作電腦程式語言的模型,這後來成為函數式程式設計指稱語意的基礎。

彼得·蘭丁
Peter Landin
出生(1930-06-05)1930年6月5日
 英國英格蘭謝菲爾德
逝世2009年6月3日(2009歲—06—03)(78歲)
國籍 英國
公民權 英國
母校劍橋大學克萊爾學院
知名於ISWIM, J算子, SECD抽象機, 越位規則
科學生涯
機構瑪麗王后學院
受影響自約翰·麥卡錫(John McCarthy)
阿隆佐·邱奇(Alonzo Church)
克里斯托弗·斯特雷奇(Christopher Strachey)
施影響於托尼·霍爾(Tony Hoare)

學術生涯

編輯

蘭丁出生於英格蘭謝菲爾德,中學時代就讀於愛德華七世學校;他從劍橋大學克萊爾學院畢業[2]。在1960年到1964年間,他成為了克里斯托弗·斯特雷奇的助手,當時斯特雷奇在倫敦擔任一名獨立電腦顧問。他的大部分成果均發表於這期間以及後來在美國麻省理工學院參與UNIVAC工作的短暫時間。之後他在倫敦瑪麗王后大學找到了一份教職工作。70年代到80年代,他的主要精力投入了倫敦瑪麗王后大學電腦科學部的創設、課程設置和教學[3]。在他退休之後,他獲得了倫敦瑪麗王后大學的理論計算學榮譽教授稱號。2012年,倫敦瑪麗王后大學的電腦科學大樓以他的名字命名。

2001年,在倫敦科學博物館的一個關於程式語言形式語意學的會議上,他回顧了他的學術生涯;他的電腦科學研究肇始於20世紀50年代,極大地受到了當時約翰·麥卡錫LISP語言的影響,而他自己使用得最多的程式語言則是Fortran[4]

60年代,蘭丁在ALGOL程式語言的標準化制定中起到了推動作用[5][6];圖靈獎獲得者托尼·霍爾稱他是幾個教會他ALGOL 60語言的人之一[7]

1964年,蘭丁提出了閉包的概念。這一概念後來被Scheme語言實現,並逐漸成為了函數式程式設計中的重要概念。蘭丁設計了SECD抽象機,這是第一個被確切定義的抽象過程虛擬機器

1966年,他在SECD抽象機的基礎上設計了ISWIM程式語言,定義了他所謂的越位規則,並第一次提出了程式語言語法糖的概念。越位語法規則使用空格縮排來控制名稱聲明的作用域,這後來在MirandaHaskellPythonF#等語言中得到了運用。

蘭丁最重要的論文是1966年發表的《The next 700 programming languages》,它對後來程式語言研究有影響深遠[8]。之所以選擇「700」這個數字,據說是因為蘭丁在《ACM期刊》上讀到一篇文章說世界上已經存在過700種程式語言[9]

個人生活與政治傾向

編輯

蘭丁是一名公開的雙性戀[2]同性戀權益活動家,在20世紀70年代早期參與過同志解放陣線英語Gay Liberation Front的活動。他曾一度因參加反核遊行而被逮捕。[10]他還是一名自行車友。

部分學術著作

編輯

參考文獻

編輯
  1. ^ Peter Landin頁面存檔備份,存於互聯網檔案館), Lambda the Ultimate頁面存檔備份,存於互聯網檔案館), 4 June 2009.
  2. ^ 2.0 2.1 2.2 Bornat 2009a
  3. ^ Acknowledged in the foreword to the text book 「Programming from First Principles」 by Richard Bornat. Published by Prentice Hall, 1987. ISBN 978-0-13-729104-5.
  4. ^ Program Verification and Semantics: Report. [2014-07-27]. (原始內容存檔於2007-09-26). , 2001.
  5. ^ Listed amongst those who attended the November 1959 conference in [Paris] [1]頁面存檔備份,存於互聯網檔案館) and the 1962 conference [2]頁面存檔備份,存於互聯網檔案館).
  6. ^ Landin 1964
  7. ^ ACM Turing Award Lecture: The Emperor's Old Clothes. C. Antony R. Hoare, 1980, Published in the Communications of the ACM.
  8. ^ Landin 1966
  9. ^ Personal communication, September 2007.
  10. ^ Bornat 2009b

擴充閱讀

編輯