Andrew Koenig (programátor) - Andrew Koenig (programmer)
Andrew R. Koenig | |
---|---|
narozený | Červen 1952 New York City, USA | (stáří68)
Národnost | americký |
Alma mater | Columbia University (B.S., Mathematics; M.S., Computer Scuence, 1977) |
obsazení | Počítačový vědec |
Známý jako | C ++, programování, psaní, "Koenig vyhledávání ", "anti-vzor " |
Pozoruhodná práce | C pasti a úskalí (1988) Ruminace v C ++ (1997) Zrychlený C ++ (2000) |
Manžel (y) | Barbara E. Moo |
Rodiče) | Seymour H. Koenig Harriet Koenig [1] |
webová stránka | www |
Andrew Richard Koenig (IPA: [ˈKøːnɪç]; narozen v červnu 1952) je bývalý AT&T a Bell Labs výzkumný pracovník a programátor.[2] Je autorem knihy C pasti a úskalí a spoluautor (s Barbara Moo ) z Zrychlený C ++ a Ruminace v C ++a jeho jméno je spojeno s vyhledávání názvů závislých na argumentech, známé také jako „Koenigovo vyhledávání“.[3] Působil jako redaktor projektu výboru norem ISO / ANSI pro C ++,[4] je autorem více než 150 příspěvků na C ++, a je uveden jako vynálezce čtyř patentů.[5]
Časný život a kariéra
Koenig se narodil v roce New York City a je synem fyzika Dr. Seymoura H. Koeniga,[6] bývalý ředitel IBM Watson Laboratory a Harriet Koenig, autorka a sběratelka indiánského umění.[7]
Vystudoval Bronx High School of Science v roce 1968 [8] a poté získal bakalářský a magisterský titul z Columbia University v New Yorku. Na konci 60. a 70. let byl prominentním členem Columbia University Center for Computing Activities (CUCCA). Napsal první e-mailový program používaný na univerzitě.[9]
V roce 1977 nastoupil do technického týmu Bell Labs v Murray Hill, New Jersey, ze kterého později odešel do důchodu.
První kniha, kterou napsal, v roce 1987, C pasti a úskalí, byl motivován jeho předchozí prací a prací, většinou jako zaměstnanec na Kolumbijské univerzitě, v jiném počítačovém jazyce, PL / I.. V roce 1977 jako nedávno najatý zaměstnanec společnosti Bell Labs na konferenci představil dokument s názvem „PL / I Traps and Pitfalls“. PODÍL setkání ve Washingtonu, D.C.[10]
Patenty
- Systém ověřování uživatelů využívající šifrovací funkce, # 4 590 470. „Kombinuje náhodné ověření veřejného klíče s odpovědí na výzvu se skrytím algoritmu ověřování v zařízení, které zpřístupňuje pouze vstupy a výstupy algoritmu. To zajišťuje relaci proti odposlechu a přehrávání a nevyžaduje žádné tajné informace o hostiteli.“
- Ukládání stromů ve splavné formě, # 5 530 957. „Technika pro ukládání stromů (například reprezentace zdrojových programů v programovacím prostředí), která zcela eliminuje režii prostoru obvykle spojenou s ukládáním ukazatelů, a přitom stále umožňuje běžné navigační operace s přiměřenou časovou efektivitou.“
- Metoda a zařízení pro analýzu zdrojového kódu pomocí analýzy předpony, # 5 812 853, „Technika pro urychlení předběžného zpracování, jako je předzpracování maker, v kompilátoru zapamatováním užitečných řetězců předpony vstupního programu ve stromové datové struktuře a jejich klíčováním řetězce zapamatovaných stavů překladače. "
- Metoda a zařízení pro stránkování alternativních uživatelů, č. 6 057 782, „Myšlenka umožnit stránkovacím systémům, které podporují potvrzení, změnit pořadí jejich seznamu cílů pro budoucí stránky na základě potvrzení nebo nedostatku na předchozích stránkách.“
Vybraná bibliografie
Knihy
- Koenig, Andrew, C pasti a úskalí, Reading, Mass.: Addison-Wesley, 1988, c. 1989. ISBN 0-201-17928-8
- Koenig, Andrew; Moo, Barbara, Ruminace v C ++, Addison-Wesley, 1997. ISBN 0-201-42339-1
- Koenig, Andrew; Moo, Barbara, Zrychlený C ++, Addison-Wesley, 2000.ISBN 0-201-70353-X
Doklady
1999
- 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
- Tichá revoluce. JOOP 10 (8): 10–13, 16 (1998)
- Zpráva od Morristownu. JOOP 10 (9): 5-8 (1998)
- Programová revoluce v jazycích založená na logice objektů. JOOP 11 (1): 13-16 (1998)
- Je abstrakce dobrá? JOOP 11 (2): 66-69 (1998)
- Simulace dynamických typů v C ++, část 1. JOOP 11 (3): 76–78, 80 (1998)
- Simulace dynamických typů v C ++, část 2. JOOP 11 (4): 63-67 (1998)
- Proč jsou vektory účinné? JOOP 11 (5): 71-75 (1998)
- Standardní C ++ předkrm. JOOP 11 (6): 85-87 (1998)
- Andrew Koenig, Barbara Moo: Teaching Standard C ++. JOOP 11 (7): 11-17 (1998)
1997
- C ++ ve třídě: Pohled do budoucnosti. JOOP 10 (1): 59-61 (1997)
- Převrácení rozhraní naruby. JOOP 10 (2): 56-58 (1997)
- Který kontejner bychom měli učit jako první? JOOP 10 (3): 10-12 (1997)
- A ++ dekáda jazyka C ++. JOOP 10 (4): 20–23, 34 (1997)
- Dědičnost a zkratky. JOOP 10 (5): 6–9, 21 (1997)
- Zpráva z Londýna. JOOP 10 (6): 11-16 (1997)
- Výpočet typu v době kompilace. JOOP 10 (7): 11-14 (1997)
- Důležitost - a rizika - měření výkonu. JOOP 9 (8): 58-60 (1997)
- Iterátor Iterátory a časové posloupnosti. JOOP 9 (9): 66–67, 71 (1997)
1996
- Idiomatic Design - pozvaná přednáška pro ACM OOPSLA '95; publikováno v Postkonferenčním sborníku a přetištěno ve zkrácené formě v CACM sv. 39, č. 11, listopad 1996.
- Adaptéry funkcí. JOOP 8 (8): 51-53 (1996)
- Kompatibilita vs. pokrok. JOOP 8 (9): 48-50 (1996)
- Obecné vstupní iterátory. JOOP 9 (1): 72-75 (1996)
- Přidělení paměti a kompatibilita C. JOOP 9 (2): 42–43, 54 (1996)
- C ++ jako první jazyk. JOOP 9 (3): 47-49 (1996)
- Design, chování a očekávání. JOOP 9 (4): 79-81 (1996)
- Rozhraní a iniciativa. JOOP 9 (5): 64-67 (1996)
- Iterátory aritmetické sekvence. JOOP 9 (6): 38–39, 92 (1996)
- Sbírka v C ++: Žádný všelék, ale užitečný. JOOP 9 (7): 55-57 (1996)
1995
- Úvod do iterátorových adaptérů. JOOP 7 (8): 66-68 (1995)
- Polymorfní odrazy. JOOP 7 (9): 65–67, 80 (1995)
- Vzory a vzory. JOOP 8 (1): 46-48 (1995)
- Je programování jako fotografie? JOOP 8 (2): 73-75 (1995)
- Balení standardu. JOOP 8 (3): 60-62 (1995)
- Příklad designu citlivého na jazyk. JOOP 8 (4): 56–58, 61 (1995)
- Funkční objekty, šablony a dědičnost. JOOP 8 (5): 65–68, 84 (1995)
- Variace na téma rukojeti. JOOP 8 (6): 77-80 (1995)
- Další variace rukojeti. JOOP 8 (7): 61-63 (1995)
- Idiomatický 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
- Anekdota o odvození typu ML, USENIX Very High Level Languages Symposium, říjen 1994, Santa Fe
- Kdy psát Buggy programy. JOOP 7 (1): 80-82 (1994)
- Knihovny v každodenním používání. JOOP 7 (2): 68–72, 80 (1994)
- Šablony a obecné algoritmy. JOOP 7 (3): 45-47 (1994)
- Náhradní třídy v C ++. JOOP 7 (4): 71–72, 80 (1994)
- Generické iterátory. JOOP 7 (5): 69-72 (1994)
- Myšlenky na abstrakci. JOOP 7 (6): 68-70 (1994)
1992
- Prostorově efektivní stromy v C ++. Konference C ++ 1992: 117-130
1991
- Andrew Koenig, Thomas A. Cargill, Keith E. Gorlen, Robert B. Murray, Michael Vilot: Jak užitečné je vícenásobné dědictví v C ++? Konference C ++ 1991: 81-84
1990
- Andrew Koenig, Bjarne Stroustrup: Zpracování výjimek pro C ++. Konference C ++ 1990: 149-176
1988
- Asociativní pole v C ++, léto 1988, konference Usenix (str. 173–186), San Francisco
1986
- Programovací jazyk Snocone, Bell Labs Computing Science Technical Report # 124, 19. srpna 1986
1984
- Automatická distribuce softwaru,[11] Konference léta 1984 v Usenixu (str. 87–106), Portland, Oregon
1977
- "PL / I Traps and Pitfalls", představený na PODÍL konference, 1977.
Reference
- ^ „Seymour Koenig, Ph.D. 16. července 1927 - 19. února 2018“, International Society for Magnetic Resonance in Medicine, 2018.
- ^ Nair, R B (2013) 'ANDREW R KOENIG | LBS kuttipedia '. https://lbsitbytes2010.wordpress.com/2013/04/07/andrew-r-koenig/
- ^ Sutter, Herb (Březen 1998). „Co je ve třídě? - Princip rozhraní“. Zpráva v C ++. Citováno 21. února 2010.
- ^ Sutter, Herb (22. října 2000). „Zápis ze schůze ISO WG21, 22. října 2000“ (PDF). Pracovní skupina ISO 21. Citováno 21. února 2010.
- ^ „ACCU představuje: Semináře Java a C / C ++ (15. – 18. Září 1999)“. ACCU. 23. září 1999. Archivovány od originál dne 11. srpna 2011. Citováno 21. února 2010.
- ^ „Seymour H. Koenig“ „Historie výpočetní techniky na Kolumbijské univerzitě
- ^ Koenig, Harriet; Koenig, Seymour H., Navajo tkaní, Navajo způsoby, Katonah, N.Y.: Katonah Gallery, 1986. ISBN 0-915171-03-1
- ^ „Pozoruhodní absolventi“ Webové stránky Bronx High School of Science
- ^ da Cruz, Frank (6. února 2010). "Historie výpočetní techniky na Kolumbijské univerzitě". Informační technologie na Kolumbijské univerzitě. Archivováno z původního dne 11. března 2010. Citováno 21. února 2010.
- ^ Srov. Koenig, předmluva k „C Traps and Pitfalls“.
- ^ McIlroy, M. D. (1987). Čtenář Research Unix: anotované výňatky z Programmer's Manual, 1971–1986 (PDF) (Technická zpráva). CSTR. Bell Labs. 139.