12 Folgen

Christopher Strachey (1916–1975) was a pioneering computer scientist and the founder of the Programming Research Group, now part of the Department of Computer Science at Oxford University. Although Strachey was keenly interested in the practical aspects of computing, it is in the theoretical side that he most indelibly left his mark, notably by creating with Dana Scott the denotational (or as he called it, ‘mathematical’) approach to defining the semantics of programming languages. Strachey also spent time writing complex programs and puzzles for various computers, such as a draughts playing program for the Pilot ACE in 1951. He developed some fundamental concepts of machine-independent operating systems, including an early suggestion for time-sharing, and was a prime mover in the influential CPL programming language. Strachey came from a notable family of intellectuals and artists, perhaps most famous for Christopher’s uncle Lytton, a writer and member of the Bloomsbury group.

We marked the occasion of 100 years since Christopher Strachey's birth on Saturday 19th November 2016, three days after his birthday, with a symposium of invited speakers. The morning looked back at Strachey’s life and works from a historical and technical perspective, and the afternoon concerned continuing research themes in Computer Science inspired by Strachey, at Oxford and elsewhere. This podcast series has recordings of these talks.

Strachey 100: an Oxford Computing Pioneer Oxford University

    • Bildung

Christopher Strachey (1916–1975) was a pioneering computer scientist and the founder of the Programming Research Group, now part of the Department of Computer Science at Oxford University. Although Strachey was keenly interested in the practical aspects of computing, it is in the theoretical side that he most indelibly left his mark, notably by creating with Dana Scott the denotational (or as he called it, ‘mathematical’) approach to defining the semantics of programming languages. Strachey also spent time writing complex programs and puzzles for various computers, such as a draughts playing program for the Pilot ACE in 1951. He developed some fundamental concepts of machine-independent operating systems, including an early suggestion for time-sharing, and was a prime mover in the influential CPL programming language. Strachey came from a notable family of intellectuals and artists, perhaps most famous for Christopher’s uncle Lytton, a writer and member of the Bloomsbury group.

We marked the occasion of 100 years since Christopher Strachey's birth on Saturday 19th November 2016, three days after his birthday, with a symposium of invited speakers. The morning looked back at Strachey’s life and works from a historical and technical perspective, and the afternoon concerned continuing research themes in Computer Science inspired by Strachey, at Oxford and elsewhere. This podcast series has recordings of these talks.

    • video
    What are types for?

    What are types for?

    Types in programming languages are commonly thought of as a way of preventing certain bad things from happening, such as multiplying a number by a string. But this is only half of the benefit of types: it is what types are against. Types in programming languages are also what enable some good things to happen, such as selecting the right implementation of a heterogeneous operation like comparison or printing based on type information; this is what are types for. This ability is surprisingly powerful, and gives rise to a variety of highly expressive generic programming techniques. Jeremy illustrates with some examples based on the rank-polymorphic array operations introduced in Iverson’s APL: not only does the type information prevent array shape errors, it is what directs the lifting of operations across array dimensions.

    • 31 Min.
    • video
    Parametric Polymorphism and models of storage

    Parametric Polymorphism and models of storage

    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.

    • 40 Min.
    • video
    Probabilistic Programming

    Probabilistic Programming

    Hongseok begins by talking about a program of Strachey’s that wrote “love letters” using the Manchester University computer. He then uses this as a lead in for discussing probabilistic methods of generating algorithms and programs.

    • 34 Min.
    • video
    Christopher Strachey, First-Class Citizen

    Christopher Strachey, First-Class Citizen

    Philip reviews Christopher Strachey’s influence on modern-day functional programming languages.

    • 31 Min.
    • video
    A modelling language approach to defining mathematical structures via semantics

    A modelling language approach to defining mathematical structures via semantics

    In this talk, Jane presents about her work on modelling dynamic behaviour of systems using quantative modelling techniques. Particular kinds of modelling diagrams are used and a mathematical approach to looking at their meaning is presented.

    • 33 Min.
    • video
    Greetings to the participants at “Strachey 100”

    Greetings to the participants at “Strachey 100”

    The logician Dana Scott played a crucial part in the story of denotational semantics, working for a term with Christopher Strachey in Autumn 1969, when he created a mathematical model for the foundation of the method. In this talk, Dana discusses this period as well as reminiscing about his life and career up to that point.

    • 23 Min.

Top‑Podcasts in Bildung

Eine Stunde History - Deutschlandfunk Nova
Deutschlandfunk Nova
Quarks Science Cops
Quarks
Gehirn gehört - Prof. Dr. Volker Busch
Prof. Dr. Volker Busch
G Spot  mit Stefanie Giesinger
Stefanie Giesinger & Studio Bummens
ZEIT Sprachen – English, please!
ZEIT ONLINE
Easy German: Learn German with native speakers | Deutsch lernen mit Muttersprachlern
Cari, Manuel und das Team von Easy German

Mehr von Oxford University

Approaching Shakespeare
Oxford University
CortexCast - A Neuroscience Podcast
Oxford University
Theoretical Physics - From Outer Space to Plasma
Oxford University
Politics and International Relations Podcasts
Oxford University
Philosophy for Beginners
Oxford University
Computer Science
Oxford University