David Abrahams (computer programmer)


David Abrahams is a computer programmer and author. He is the son of physicist Elihu Abrahams and choreographer Geulah Abrahams. He is most well known for his activities related to the C++ programming language. In particular his contributions to the language include the delineating of a theory of exceptions, sitting on the C++ Standards Committee, being a founding member of Boost and co-authoring a book on the subject of template metaprogramming.
Abrahams became a member of the C++ Standards Committee in 1996 and served until 2012. During the standardization process that resulted in the first ANSI standard C++ – in 1998 – Abrahams was a principal driving force behind detailing the exception safety of the C++ Standard Library. Many of the functions and methods of the standard are specified with one of three guarantees. Together these have become known as the Abrahams guarantees.
Following the standardization, Abrahams became one of the founding members of Boost.org, a community group founded to provide reusable C++ libraries. Abrahams has written several of the libraries and assisted in the development of others. Abrahams was also the founder and principal member of Boost Consulting, a company that offered software development and training courses for 12 years with a heavy bias to use the Boost libraries, and founder of BoostCon, now , the annual conference in Aspen, CO.
In 2013 Abrahams became an employee at Apple Inc, where he worked on the development of the Swift programming language and became the lead of the Swift standard library. In 2017 he joined the SwiftUI project. In January 2020 he announced on Twitter that he was joining Google Brain to work on the Swift for TensorFlow project.

Publications

In 2003 his paper from the 1998 International Seminar on Generic Programming at Dagstuhl "" was published in Lecture Notes in Computer Science.
In 2004, Abrahams co-authored C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond with Aleksey Gurtovoy. Together with Boost's Metaprogramming Library, the book broke new ground in the practical use of template metaprogramming, including re-implementing much of the Standard Template Library in a compile-time world, with all operations on types.

Significant Presentations