-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
38 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
--- | ||
title: "「CS Idol」Peter John Landin" | ||
subtitle: "「学术偶像」- 彼得·约翰·兰丁" | ||
layout: post | ||
author: "Hux" | ||
header-style: text | ||
hidden: true | ||
tags: | ||
- idol | ||
--- | ||
|
||
> [wiki](https://en.wikipedia.org/wiki/Peter_Landin) | ||
> [维基](https://zh.wikipedia.org/wiki/%E5%BD%BC%E5%BE%97%C2%B7%E5%85%B0%E4%B8%81) | ||
I was long curious about how does λ calculus become the foundation of formalizaing programming languages. It's strange that I haven't look up the answer until today: It's invented so early by Alonzo Church (whom I will write another post for) as mathematicla foundation in 1930s and its relation with programming language was "re-discoverred" in 1960s. | ||
|
||
From the "Lambda calculus and programming languages" section of wikipedia page: | ||
|
||
> As pointed out by Peter Landin's 1965 paper "A Correspondence between ALGOL 60 and Church's Lambda-notation" | ||
I found this name quite familiar since I read his paper "The mechanical evaluation of expressions" before, in which he introduced the first abstract machine for functional programming language, namely [SECD machine](https://en.wikipedia.org/wiki/SECD_machine). This paper also define the term [Closure](https://en.wikipedia.org/wiki/Closure_(computer_programming)) which becomes a prevalent notion in computer programming nowadays. | ||
|
||
Besides of that, his contributions also include: | ||
|
||
- on standarlizing Algo | ||
- [ISWIM](https://en.wikipedia.org/wiki/ISWIM) programming language | ||
- [off-side rule](https://en.wikipedia.org/wiki/Off-side_rule), known as "indentation-based" syntax nowadays, popularized by Miranda, Haskell, Python, etc. | ||
- coin the term [syntactic sugar](https://en.wikipedia.org/wiki/Syntactic_sugar) | ||
|
||
He was much influenced by a study of McCarthy's LISP and taught [Tony Hoare](https://en.wikipedia.org/wiki/Tony_Hoare) ALGO with Peter Naur and Edsger W. Dijkstra. (Oh yes. definitely 4 more people to write). | ||
|
||
I have just download his old, influential paper "The next 700 programming languages.". I am sure it will be an enjoyable read. | ||
|
||
|
||
|
||
|
||
|
||
|