Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Andrew Koenig (programmer)

From Wikipedia, the free encyclopedia
American computer programmer
This article has multiple issues. Please helpimprove it or discuss these issues on thetalk page.(Learn how and when to remove these messages)
Thisbiography of a living personneeds additionalcitations forverification. Please help by addingreliable sources.Contentious material about living persons that is unsourced orpoorly sourcedmust be removed immediately from the article and its talk page, especially if potentiallylibelous.
Find sources: "Andrew Koenig" programmer – news ·newspapers ·books ·scholar ·JSTOR
(March 2025) (Learn how and when to remove this message)
icon
This articlerelies excessively onreferences toprimary sources. Please improve this article by addingsecondary or tertiary sources.
Find sources: "Andrew Koenig" programmer – news ·newspapers ·books ·scholar ·JSTOR
(March 2025) (Learn how and when to remove this message)
Some of this article'slisted sourcesmay not bereliable. Please help improve this article by looking for better, more reliable sources. Unreliable citations may be challenged and removed.(March 2025) (Learn how and when to remove this message)
(Learn how and when to remove this message)
Andrew Koenig
Born
Andrew Richard Koenig

June 1952 (1952-06) (age 73)
Alma materColumbia University(B.S., Mathematics; M.S., Computer Science, 1977)
OccupationComputer scientist
Known forC++, programming, writing, "Koenig lookup", "anti-pattern"
Notable workC Traps and Pitfalls (1988)
Ruminations on C++ (1997)
Accelerated C++ (2000)
SpouseBarbara E. Moo
Websitewww.acceleratedcpp.com/authors/koenig

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++.

Early life and career

[edit]

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]

Selected bibliography

[edit]

Books

[edit]

Papers

[edit]

1999

[edit]
  • Andrew Koenig, Barbara Moo: Teaching Standard C++, Part 2. Journal of Object Oriented Programming (JOOP) 11(8): 64-67 (1999)
  • Andrew Koenig, Barbara Moo: Teaching Standard C++, Part 3. JOOP 11(9): 59-63 (1999)

1998

[edit]
  • A Quiet Revolution. JOOP 10(8): 10–13, 16 (1998)
  • Report from Morristown. JOOP 10(9): 5-8 (1998)
  • A Programming Revolution in Languages Founded on Object Logic. JOOP 11(1): 13-16 (1998)
  • Is Abstraction Good? JOOP 11(2): 66-69 (1998)
  • Simulating Dynamic Types in C++, Part 1. JOOP 11(3): 76–78, 80 (1998)
  • Simulating Dynamic Types in C++, Part 2. JOOP 11(4): 63-67 (1998)
  • Why Are Vectors Efficient? JOOP 11(5): 71-75 (1998)
  • A Standard C++ Appetizer. JOOP 11(6): 85-87 (1998)
  • Andrew Koenig, Barbara Moo: Teaching Standard C++. JOOP 11(7): 11-17 (1998)

1997

[edit]
  • C++ in the Classroom: A Look Forward. JOOP 10(1): 59-61 (1997)
  • Turning an Interface Inside out. JOOP 10(2): 56-58 (1997)
  • Which Container Should we Teach First? JOOP 10(3): 10-12 (1997)
  • A++decade of C++. JOOP 10(4): 20–23, 34 (1997)
  • Inheritance and Abbreviations. JOOP 10(5): 6–9, 21 (1997)
  • Report from London. JOOP 10(6): 11-16 (1997)
  • Compile-Time Type Computation. JOOP 10(7): 11-14 (1997)
  • The Importance — and Hazards — of Performance Measurement. JOOP 9(8): 58-60 (1997)
  • Iterator Iterators and Temporal Sequences. JOOP 9(9): 66–67, 71 (1997)

1996

[edit]
  • 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)
  • Interface and Initiative. JOOP 9(5): 64-67 (1996)
  • Arithmetic Sequence Iterators. JOOP 9(6): 38–39, 92 (1996)
  • Collection in C++: No Panacea, but Useful. JOOP 9(7): 55-57 (1996)

1995

[edit]
  • Introduction to Iterator Adaptors. JOOP 7(8): 66-68 (1995)
  • Polymorphic Reflections. JOOP 7(9): 65–67, 80 (1995)
  • Patterns and Antipatterns. JOOP 8(1): 46-48 (1995)
  • Is Programming Like Photography? JOOP 8(2): 73-75 (1995)
  • Wrapping up the Standard. JOOP 8(3): 60-62 (1995)
  • An Example of Language-Sensitive Design. JOOP 8(4): 56–58, 61 (1995)
  • Function Objects, Templates, and Inheritance. JOOP 8(5): 65–68, 84 (1995)
  • Variations on a Handle Theme. JOOP 8(6): 77-80 (1995)
  • Another Handle Variation. JOOP 8(7): 61-63 (1995)
  • Idiomatic design. OOPS Messenger 6(4): 14-19 (1995)
  • Andrew Koenig, Bjarne Stroustrup: Foundations for Native C++ Styles Softw., Pract. Exper. 25(S4): S4/45-S4/86 (1995)

1994

[edit]
  • An anecdote about ML type inference, USENIX Very High Level Languages Symposium, October 1994, Santa Fe
  • When to Write Buggy Programs. JOOP 7(1): 80-82 (1994)
  • Libraries in Everyday Use. JOOP 7(2): 68–72, 80 (1994)
  • Templates and Generic Algorithms. JOOP 7(3): 45-47 (1994)
  • Surrogate Classes in C++. JOOP 7(4): 71–72, 80 (1994)
  • Generic Iterators. JOOP 7(5): 69-72 (1994)
  • Thoughts on Abstraction. JOOP 7(6): 68-70 (1994)

1992

[edit]
  • Space-Efficient Trees in C++. C++ Conference 1992: 117-130

1991

[edit]
  • 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

1990

[edit]
  • Andrew Koenig, Bjarne Stroustrup: Exception Handling for C++. C++ Conference 1990: 149-176

1988

[edit]
  • Associative arrays in C++, Summer 1988 Usenix Conference (pp. 173–186), San Francisco

1986

[edit]

1984

[edit]
  • Automatic Software Distribution,[8] Summer 1984 Usenix Conference (pp. 87–106), Portland, Oregon

1977

[edit]
  • "PL/I Traps and Pitfalls", presented at theSHARE conference, 1977.

References

[edit]
  1. ^Nair, R B (2013) 'ANDREW R KOENIG | LBS kuttipedia'.https://lbsitbytes2010.wordpress.com/2013/04/07/andrew-r-koenig/
  2. ^Sutter, Herb (March 1998)."What's In a Class? — The Interface Principle". C++ Report. Retrieved21 February 2010.
  3. ^"A Personal Note About Argument-Dependent Lookup". 2012-05-03. Archived fromthe original on 17 March 2018. Retrieved7 February 2014.
  4. ^Sutter, Herb (22 October 2000)."Minutes of ISO WG21 Meeting, October 22, 2000"(PDF).ISO Working Group 21. Retrieved21 February 2010.
  5. ^"Notable Alumni", Bronx High School of Science Web site
  6. ^da Cruz, Frank (6 February 2010)."Columbia University Computing History". Columbia University Information Technology.Archived from the original on 11 March 2010. Retrieved21 February 2010.
  7. ^Cf. Koenig,preface to "C Traps and Pitfalls".
  8. ^McIlroy, M. D. (1987).A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986(PDF) (Technical report). CSTR. Bell Labs. 139.

External links

[edit]
International
National
People
Other
Retrieved from "https://en.wikipedia.org/w/index.php?title=Andrew_Koenig_(programmer)&oldid=1327423824"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp