David Abrahams (computer Programmer)
   HOME

TheInfoList



OR:

David Abrahams is a
computer programmer A programmer, computer programmer or coder is an author of computer source code someone with skill in computer programming. The professional titles ''software developer'' and ''software engineer'' are used for jobs that require a progr ...
and admin. He is the son of physicist
Elihu Abrahams Elihu Abrahams (April 3, 1927 – October 18, 2018) was a theoretical physicist, specializing in condensed matter physics. Abrahams attended Brooklyn Technical High School, graduating in 1944. In 1947, Abrahams received his bachelor's degree and ...
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 The C standard library, sometimes referred to as 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 origina ...
. 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 Aspen is a common name for certain tree species in the Populus sect. Populus, of the ''Populus'' (poplar) genus. Species These species are called aspens: * ''Populus adenopoda'' – Chinese aspen (China, south of ''P. tremula'') * ''Populus da ...
,
Colorado Colorado is a U.S. state, state in the Western United States. It is one of the Mountain states, sharing the Four Corners region with Arizona, New Mexico, and Utah. It is also bordered by Wyoming to the north, Nebraska to the northeast, Kansas ...
. In 2013, Abrahams became an employee at
Apple Inc Apple Inc. is an American multinational corporation and technology company headquartered in Cupertino, California, in Silicon Valley. It is best known for its consumer electronics, software, and services. Founded in 1976 as Apple Computer ...
, 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 was a deep learning artificial intelligence research team that served as the sole AI branch of Google before being incorporated under the newer umbrella of Google AI, a research division at Google dedicated to artificial intelligence ...
to work on the Swift for
TensorFlow TensorFlow is a Library (computing), software library for machine learning and artificial intelligence. It can be used across a range of tasks, but is used mainly for Types of artificial neural networks#Training, training and Statistical infer ...
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
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 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 2015. *
Embracing Algorithms
' from Apple's WWDC 2018. *
Building Custom Views in SwiftUI
' from Apple's WWDC 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)