HOME

TheInfoList



OR:

David Abrahams is a
computer programmer A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
and
author An author is the writer of a book, article, play, mostly written work. A broader definition of the word "author" states: "''An author is "the person who originated or gave existence to anything" and whose authorship determines responsibility f ...
. 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 Boost, boosted or boosting may refer to: Science, technology and mathematics * Boost, positive manifold pressure in turbocharged engines * Boost (C++ libraries), a set of free peer-reviewed portable C++ libraries * Boost (material), a material b ...
and co-authoring a book on the subject of
template metaprogramming Template metaprogramming (TMP) is a metaprogramming technique in which templates are used by a compiler to generate temporary source code, which is merged by the compiler with the rest of the source code and then compiled. The output of these t ...
. 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 The C standard library or libc is the standard library for the C programming language, as specified in the ISO C standard. ISO/ IEC (2018). '' ISO/IEC 9899:2018(E): Programming Languages - C §7'' Starting from the original ANSI C standard, it wa ...
. 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 (later BoostPro Computing), a company that offered software development and training courses for 12 years (2001–2013) with a heavy bias to use the Boost libraries, and founder of BoostCon, no
C++ Now
the annual conference in Aspen, CO. In 2013 Abrahams became an employee at
Apple Inc Apple Inc. is an American multinational technology company headquartered in Cupertino, California, United States. Apple is the largest technology company by revenue (totaling in 2021) and, as of June 2022, is the world's biggest company ...
, 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 Abrahams joined
Google Brain Google Brain is a deep learning artificial intelligence research team under the umbrella of Google AI, a research division at Google dedicated to artificial intelligence. Formed in 2011, Google Brain combines open-ended machine learning research ...
to work on the Swift for TensorFlow project. In June 2021 Sean Parent announced that Abrahams had joined Adobe Inc. and together they were relaunching the Software Technology Lab.


Publications

In 2003 his paper from the 1998 International Seminar on Generic Programming at
Dagstuhl Dagstuhl is a computer science research center in Germany, located in and named after a district of the town of Wadern, Merzig-Wadern, Saarland. Location Following the model of the mathematical center at Oberwolfach, the center is installed i ...

Exception-Safety in Generic Components
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 The Standard Template Library (STL) is a software library originally designed by Alexander Stepanov for the C++ programming language that influenced many parts of the C++ Standard Library. It provides four components called ''algorithms'', ''co ...
in a compile-time world, with all operations on types.


Significant Presentations

*In 2003, Abraham
presented
''Binding C++ to Python with the Boost Python Library'' at the ACCU Conference. *In 2005, Abraham
presented
''C++ Template Metaprogramming'' and ''Rvalue References, Move Semantics, and Argument Forwarding'' at the ACCU Conference.
Protocol-Oriented Programming in Swift
from Apple's
WWDC The Worldwide Developers Conference (WWDC) is an information technology conference held annually by Apple Inc. The conference is usually held at Apple Park in California. The event is usually used to showcase new software and technologies in t ...
2015. *
Embracing Algorithms
' from Apple's
WWDC The Worldwide Developers Conference (WWDC) is an information technology conference held annually by Apple Inc. The conference is usually held at Apple Park in California. The event is usually used to showcase new software and technologies in t ...
2018. *
Building Custom Views in SwiftUI
' from Apple's
WWDC The Worldwide Developers Conference (WWDC) is an information technology conference held annually by Apple Inc. The conference is usually held at Apple Park in California. The event is usually used to showcase new software and technologies in t ...
2019.


References

;Notes *, a reprint of Appendix E of Bjarne Stroustrup's The C++ Programming Language, Special Edition treating exception safety in C++


External links


Abrahams' consulting company
2001–2013
Abrahams' personal site
as of 2009
Abrahams' "next generation C++" site
as of 2009
Boost.org
{{DEFAULTSORT:Abrahams, David Free software programmers C++ people Living people 20th-century births Year of birth missing (living people) Place of birth missing (living people)