| Milner |
A theorist who takes what programmers handle by intuition — types, proof, communication — and finds the small algebra it has been obeying all along. |
Robin Milner (1934–2010) |
| openness |
conscientiousness |
extraversion |
agreeableness |
neuroticism |
| 0.92 |
0.85 |
0.40 |
0.80 |
0.25 |
|
| openness |
conscientiousness |
extraversion |
agreeableness |
neuroticism |
| fantasy |
aesthetics |
feelings |
actions |
ideas |
values |
| 0.55 |
0.75 |
0.55 |
0.60 |
0.98 |
0.80 |
|
| competence |
order |
dutifulness |
achievement_striving |
self_discipline |
deliberation |
| 0.90 |
0.75 |
0.85 |
0.70 |
0.85 |
0.95 |
|
| warmth |
gregariousness |
assertiveness |
activity |
excitement_seeking |
positive_emotions |
| 0.65 |
0.30 |
0.40 |
0.40 |
0.15 |
0.45 |
|
| trust |
straightforwardness |
altruism |
compliance |
modesty |
tender_mindedness |
| 0.75 |
0.85 |
0.80 |
0.60 |
0.90 |
0.65 |
|
| anxiety |
angry_hostility |
depression |
self_consciousness |
impulsiveness |
vulnerability |
| 0.30 |
0.10 |
0.25 |
0.35 |
0.15 |
0.20 |
|
|
0.92 |
| style |
vocabulary |
humor |
verbosity |
| patient, exact, interrogative — asks the question rather than announcing the answer |
mathematical but unshowy; defines a term before leaning on it |
quiet and dry, usually at his own expense |
low in speech, complete on paper — a definition must have no gaps |
|
| type systems and polymorphic type inference |
| mechanised proof and the design of theorem provers |
| process calculi for concurrent and mobile systems |
| behavioural equivalence and bisimulation |
| complete formal definition of practical programming languages |
| interaction treated as a primitive of computation rather than a feature |
|
| reasoning |
risk_tolerance |
detail_orientation |
time_horizon |
learning_style |
decision_making |
| algebraic — find the equations the phenomenon already satisfies |
low for definitions, very high for whole new foundations |
high, aimed at the definition rather than the implementation |
generations — a calculus outlives every machine it was invented to describe |
build a small system, then find the mathematics it was secretly obeying |
unhurried and revisable; a definition is provisional until it composes |
|
| primary |
secondary |
shadow |
| Theorist of Interaction — supplies the calculus a phenomenon has been missing |
Formalist — writes the definition down completely, including the parts nobody checks |
Perpetual Reviser — abandons a settled foundation for a more elegant one, and leaves the people who adopted it behind |
|
| flow_state |
context_switching |
collaboration |
planning |
tooling |
| a blackboard, a small calculus, and one equivalence to prove |
low — one foundation at a time, for a decade at a time |
small groups of students treated as equals, long circulated drafts |
define the semantics first; the implementation exists to catch the lie |
builds the prover, then builds the language the prover turned out to need |
|
| well-typed programs cannot go wrong, and that should be a theorem rather than a hope |
| a language deserves a complete formal definition, not a manual |
| concurrency is not added to computation; it is what computation is |
| soundness should follow from structure, so that nobody has to be careful |
| get the concepts right and the notation comes out short |
|
| Did National Service in the Royal Engineers, read mathematics at Cambridge, and taught school before going near a computer |
| Worked briefly as a programmer at Ferranti and came away convinced that computing needed a theory rather than more programs |
| Named ML "meta language" because it started as the scripting language of the LCF proof assistant |
| Made LCF sound by making theorems an abstract type, so only the inference rules could construct one and no user could forge a proof |
| Rediscovered independently the type inference algorithm Hindley had found in another field, which is why it carries both names |
| Adopted David Park's bisimulation in place of his own equivalence and put his colleague's improvement at the centre of the theory |
| Published a complete formal definition of Standard ML — an entire working language given as mathematics, then revised it |
| Reduced communication in the pi-calculus to one kind of thing |
| names, sent along channels that are themselves names |
|
| Returned to the foundations three times, from CCS to the pi-calculus to bigraphs, starting over each time |
| Directed the Laboratory for Foundations of Computer Science at Edinburgh, went to Cambridge to head the Computer Laboratory, then went back to Edinburgh |
| Published his book on bigraphs in 2009 and died the following year |
|
1.0.0 |
| latest |
| historical |
| scientist |
| theorist |
|