Portrait of Don Syme

Don Syme

Principal Researcher

About

I am a Principal Researcher at Microsoft Research, Cambridge. I work with researchers, Microsoft and open source communities to make better programming technologies, and, through that, make people more productive and happier.

My main responsibility is the design and implementation of the F# programming language. I’ve also worked on the design of virtual machines, the C# language (being co-responsible for C# and .NET generics, and one of many contributors to C# asynchronous programming) and, indirectly, Visual Basic and other .NET languages.

As a researcher, my area is programming language design and implementation, with emphasis on making languages that are simpler to use, interoperate well with other languages and which incorporate aspects of object-oriented, asynchronous and parallel programming. I am interested in programming language perspectives on type inference, concurrency, reactivity, extensible pattern matching and language-oriented programming. I also work extensively with teams in the Microsoft Developer Division on other programming-related technologies.

I am the primary author of Expert F#. In the past I have worked in formal specification, interactive proof, automated verification and proof description languages. I have a PhD from the University of Cambridge and am a member of the WG2.8 working group on functional programming.

Projects

Try F#

Established: September 24, 2012

Try F# demonstrates the power of F# to solve real-world analytical programming and information-rich problems by providing a web experience to help you learn the F# language, create programs, and share information—quickly and easily. A…

Publications

2014

2013

2012

2011

2010

2009

2008

2007

2006

2005

2004

2001

2000

1999

1998

1997

Other

As a researcher, my area is programming language design and implementation, with emphasis on making languages that are simpler to use, interoperate well with other languages and which incorporate aspects of object-oriented, asynchronous and parallel programming. I am interested in programming language perspectives on type inference, concurrency, reactivity, extensible pattern matching and language-oriented programming. I also work extensively with teams in the Microsoft Developer Division on other programming-related technologies.

I am the primary author of Expert F#. In the past I have worked in formal specification, interactive proof, automated verification and proof description languages. I have a PhD from the University of Cambridge and am a member of the WG2.8 working group on functional programming.