Andrew Richard Koenig (IPA:[ˈkøːnɪç]; born June 1952) is a formerAT&T andBell Labs researcher and programmer.[1][unreliable source?] He is the author ofC Traps and Pitfalls and co-author (withBarbara Moo) ofAccelerated C++ andRuminations on C++, and his name is associated withargument-dependent name lookup, also known as "Koenig lookup",[2] though he is not its inventor.[3] He served as the Project Editor of the ISO/ANSI standards committee for C++,[4] and has authored over 150 papers onC++.
Koenig graduated fromThe Bronx High School of Science in 1968[5] and went on to receive a Bachelor of Science degree and a Master of Science degree fromColumbia University in New York. He was a prominent member of the Columbia University Center for Computing Activities (CUCCA) in the late 1960s and 1970s. He wrote the first e-mail program used at the university.[6]
In 1977, he joined the technical staff of Bell Labs inMurray Hill, New Jersey, from which he later retired.
The first book he authored, in 1987,C Traps and Pitfalls, had been motivated by his prior paper and work, mostly as a staff member at Columbia University, on a different computer language,PL/I. In 1977, as a recently hired staff member at Bell Labs, he presented a paper called "PL/I Traps and Pitfalls" at aSHARE meeting in Washington, D.C.[7]
Idiomatic Design — invited talk for ACM OOPSLA '95; published in Post-conference Proceedings and reprinted in abridged form in CACM Vol. 39, No. 11, November, 1996.
Function Adaptors. JOOP 8(8): 51-53 (1996)
Compatibility vs. Progress. JOOP 8(9): 48-50 (1996)
Generic Input Iterators. JOOP 9(1): 72-75 (1996)
Memory Allocation and C Compatibility. JOOP 9(2): 42–43, 54 (1996)
C++ as a First Language. JOOP 9(3): 47-49 (1996)
Design, Behavior, and Expectation. JOOP 9(4): 79-81 (1996)
Andrew Koenig, Thomas A. Cargill, Keith E. Gorlen, Robert B. Murray, Michael Vilot: How Useful is Multiple Inheritance in C++? C++ Conference 1991: 81-84