Введение
Британский учёный в области компьютерных наук (1930–2009)
Питер Джон Лэндин (5 июня 1930 – 3 июня 2009) был британским учёным в области компьютерных наук. Он одним из первых осознал, что лямбда-исчисление можно использовать для моделирования языка программирования, что является ключевым для развития как функционального программирования, так и денотационной семантики.
Академический
Лэндин родился в Шеффилде, где учился в школе короля Эдуарда VII и окончил колледж Клэр, Кембридж. Большая часть его работ была опубликована в этот период, а также в короткий период работы в компаниях Univac и в Массачусетском технологическом институте в США, прежде чем он занял должность в Лондонском университете королевы Марии. В 1970-х и 1980-х годах он сосредоточил свои усилия на создании факультета информатики в колледже королевы Марии, разработке учебных курсов и обучении студентов, как указано в предисловии к учебнику «Программирование с основ». После выхода на пенсию он был назначен почетным профессором теоретических вычислений в Лондонском университете королевы Марии, где в 2012 году здание факультета информатики было переименовано в здание Питера Лэндина в его честь. На семинаре в Музее науки в Лондоне в 2001 году, посвященном истории семантики программирования, он рассказал о том, как его научная карьера в области информатики началась в конце 1950-х годов и как на него оказал большое влияние язык Lisp Джона Маккарти, когда наиболее распространенным языком был Fortran. Он принимал активное участие в определении языка программирования ALGOL. Он был среди участников конференции в Париже в ноябре 1959 года и конференции 1962 года, и Тони Хоар упоминает его как одного из тех, кто обучил его ALGOL 60 и, таким образом, способствовал его умению выражать мощные рекурсивные алгоритмы: «Примерно на Пасху 1961 года в Брайтоне, Англия, был предложен курс по ALGOL 60, который вели Питер Наур, Эдсгер В. Дейкстра и Питер Лэндин. Именно там я впервые узнал о рекурсивных процедурах и увидел, как программировать метод сортировки, который ранее с трудом удавалось объяснить. Именно там я написал процедуру, самонадеянно названную QUICKSORT, на которой построена моя карьера как ученого в области информатики. Должное признание следует отдать гению создателей ALGOL 60, которые включили рекурсию в свой язык и позволили мне так элегантно описать свое изобретение миру. Я считаю высшей целью разработки языка программирования – возможность элегантно выражать хорошие идеи». Лэндин участвовал в разработке международных стандартов в области программирования и информатики в качестве члена Международной федерации по обработке информации (IFIP), Рабочей группы IFIP 2.1 по алгоритмическим языкам и вычислениям, которая определяет, поддерживает и развивает языки программирования ALGOL 60 и ALGOL 68. Лэндин является автором изобретения машины SECD (stack, environment, control, dump) – первой абстрактной машины для функционального языка программирования, языка программирования ISWIM, правила отступов Лэндина (Landin off-side rule) и термина «синтаксический сахар». Правило отступов позволяет определять область видимости с помощью пробелов, как это реализовано в языках Miranda, Haskell, Python и F# (с использованием облегченного синтаксиса). Еще одна фраза, принадлежащая Лэндину, – «Следующие 700…» – после его влиятельной статьи «Следующие 700 языков программирования». Число «700» было выбрано, потому что Лэндин прочитал в журнале ACM, что уже существует 700 языков программирования. Статья начинается с цитаты: «Сегодня 1700 специальных языков программирования используются для «коммуникации» в более чем 700 областях применения». В ней также содержится шутка о том, что возможным первым шагом в исследовательской программе является 1700 докторских диссертаций под названием «Соответствие между x и лямбда-выражением Чёрча», отсылка к его более ранней работе. Это сухое чувство юмора проявляется во многих его работах.
"Around Easter 1961, a course on ALGOL 60 was offered in Brighton, England, with Peter Naur, Edsger W. Dijkstra, and Peter Landin as tutors. It was there that I first learned about recursive procedures and saw how to program the sorting method which I had earlier found such difficulty in explaining. It was there that I wrote the procedure, immodestly named QUICKSORT, on which my career as a computer scientist is founded. Due credit must be paid to the genius of the designers of ALGOL 60 who included recursion in their language and enabled me to describe my invention so elegantly to the world. I have regarded it as the highest goal of programming language design to enable good ideas to be elegantly expressed." Landin was involved with international standards in programming and informatics, as a member of the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi, which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68. Landin is responsible for inventing the stack, environment, control, dump SECD machine, the first abstract machine for a functional programming language, and the ISWIM programming language, defining the Landin off side rule and for coining the term syntactic sugar. The off side rule allows bounding scope declaration by use of white spaces as seen in languages such as Miranda, Haskell, Python, and F# (using the light syntax). Another phrase originating with Landin is "The next 700 " after his influential paper The next 700 programming languages. "700" was chosen because Landin had read in the Journal of the ACM that there were already 700 programming languages in existence. The paper opens with the quotation " today 1,700 special programming languages used to 'communicate' in over 700 application areas." It also includes the joke that
A possible first step in the research program is 1700 doctoral theses called "A Correspondence between x and Church's λ notation." a reference to his earlier paper. This dry sense of humour is expressed in many of his papers.
Наследие
В Бодлейской библиотеке в Оксфорде хранится архив материалов, касающихся Питера Лэндина. С 2010 года ежегодно в декабре проводится Ежегодный Семантический семинар имени Питера Лэндина, организованный Специальной группой BCS FACS по формальным аспектам вычислительной науки в память о Питере Лэндине. Первый семинар представил американский ученый-компьютерщик Джон К. Рейнольдс (1935–2013). В Лондонском университете королевы Марии находится здание Питера Лэндина, в котором размещены учебные и исследовательские корпуса факультета компьютерных наук.