Nick Benton and Claudio Russo are Polyphonic C#!
Carl and Richard talk with Nick Benton and Claudio Russo from Microsoft Research UK about Polyphonic C# (now part of C-Omega) which adds asynchronous concurrency abstractions to the language.
Nick Benton is a Researcher at Microsoft Research in Cambridge, working in the Programming Principles and Tools Group.
His research ranges from proof theory and categorical logic, through semantics of programming languages and static analyses, to programming language design and compiler implementation. His thesis was on strictness analysis and he has since worked on topics that include term calculi and categorical models for linear logic, MLj and SML.NET (optimizing compilers from SML to the JVM and .NET with extensions for interlanguage working), Polyphonic C#/Cù (C# with join-calculus concurrency and XML/relational data constructs), monads and effect systems, models for dynamic allocation, and, most recently, mechanically formalized logics for reasoning about machine code programs.
Nick has a degree in Mathematics and a PhD in Computer Science, both from the University of Cambridge, and is a Fellow Commoner of Queens' College. Before joining Microsoft, he was an SERC Research Fellow, an RA on an EU ESPRIT project and Senior Research Scientist at Persimmon IT, Inc.a
Claudio Russo is a researcher in the Programming Principles and Tools group at Microsoft Research Cambridge. Before joining MSR, he was responsible for the advanced module system of Moscow ML, a popular byte-code compiler for the functional language Standard ML. At Microsoft, he co-developed SML.NET, an optimizing Standard ML compiler with full .NET interop extensions that is integrated with Visual Studio. Claudio then contributed to Generics in the .NET Framework 2.0, extending verification to cope with type parameters. He implemented the join pattern concurrency constructs in Comega, an extension of C# with additional LINQ-like features for manipulating XML and SQL. He has since used Generics to provide join patterns in a language-neutral .NET library, called Joins. Right now, Claudio is designing concurrency extensions for Visual Basic. He has a PhD in Computer Science from the University of Edinburgh and is a firm believer in typed, preferably functional, programming.