The C language remains a weapon of choice for systems programmers, and maintains a strong following among application programmers, despite continued calls for its abandonment.
In this talk I'll share some unusual perspectives on what might explain this endurance, and how it relates to issues such as unsafety, undefined behaviour, and the desire for performance. I'll highlight an underappreciated property of C in contrast with other languages: the "first class" status afforded to "foreign" objects and the act of communicating with them. This can be seen as a counterpoint to so-called "managed languages''; a recurring theme will be how slippery our conception of "a programming language'' can be, in that most properties we attribute to C and to other languages are consequences of implementation customs rather than languages per se.
Stephen Kell does practical research on programming systems. His interests span most aspects of programming and software engineering, and his research goal is to build infrastructure that enables better software per unit cost -- where the "costs" are primarily to human beings, not machine resources. The systems he builds sit mostly on the boundary between operating system and language runtime, where he sees only a very fluid boundary.
Since his PhD, he has worked for Oracle Labs, the University of Lugano, and the Univeristy of Oxford.