A historian’s perspective on the earlier years of Christopher Strachey’s life. The talk covers his familial connections, his early career as a school master, and his first computing projects.
All content for Strachey 100: an Oxford Computing Pioneer is the property of Oxford University and is served directly from their servers
with no modification, redirects, or rehosting. The podcast is not affiliated with or endorsed by Podjoint in any way.
A historian’s perspective on the earlier years of Christopher Strachey’s life. The talk covers his familial connections, his early career as a school master, and his first computing projects.
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.
Strachey 100: an Oxford Computing Pioneer
A historian’s perspective on the earlier years of Christopher Strachey’s life. The talk covers his familial connections, his early career as a school master, and his first computing projects.