Strachey 100: an Oxford Computing Pioneer

Parametric Polymorphism and models of storage


Listen Later

In this presentation, Uday brings together two strands of Christopher Strachey’s thought: parametric polymorphism and abstract models of storage. The term parametric polymorphism was introduced in by Strachey who distinguished it from “ad hoc” polymorphism. In the words of John Reynolds, “a parametric polymorphic function is one that behaves the same way for all types,” whereas an ad hoc polymorphic function may have unrelated meanings at different types. A very similar intuition arose in mathematics, some twenty years earlier, for which Eilenberg and MacLane proposed a “General Theory of Natural Equivalences”, what we now call category theory. Relating the two notions allows us to develop a broad view of “parametricity” (the idea of acting the same way for all types), which
is applicable not only to programming languages but also to mathematics and perhaps other disciplines. A particularly important application of this broad view is for Strachey’s “mathematical semantics” of programming languages.
For modelling imperative programming languages that operate by manipulating a store, Strachey presented a basic model of storage based on “locations”, while promising a further paper on an “abstract model of storage” to appear in future. Unfortunately the latter never appeared. In succeeding work, Reynolds proposed an abstract model of store as well as an “intuitionistic” functor category approach to model the stack discipline of the store. O'Hearn and Tennent made the crucial observation that the model needs to be embellished with parametricity to capture the data abstraction aspects of the store.
In this talk, Uday reviews these developments as well as his own recent work on integrating the Reynolds model with parametricity to capture the fact that state changes of the store are irreversible. One way to understand these developments is to view them as a “parametric mathematical semantics” of programming languages.
...more
View all episodesView all episodes
Download on the App Store

Strachey 100: an Oxford Computing PioneerBy Oxford University


More shows like Strachey 100: an Oxford Computing Pioneer

View all
Philosophy for Beginners by Oxford University

Philosophy for Beginners

331 Listeners

Approaching Shakespeare by Oxford University

Approaching Shakespeare

332 Listeners

Faculty of Classics by Oxford University

Faculty of Classics

42 Listeners

Anthropology by Oxford University

Anthropology

72 Listeners

Aesthetics and Philosophy of Art lectures by Oxford University

Aesthetics and Philosophy of Art lectures

75 Listeners

Philosophy of Religion by Oxford University

Philosophy of Religion

41 Listeners

Theoretical Physics - From Outer Space to Plasma by Oxford University

Theoretical Physics - From Outer Space to Plasma

60 Listeners

The Secrets of Mathematics by Oxford University

The Secrets of Mathematics

42 Listeners

Critical Reasoning for Beginners by Oxford University

Critical Reasoning for Beginners

30 Listeners

Kant's Critique of Pure Reason by Oxford University

Kant's Critique of Pure Reason

77 Listeners