Tima Teitelbauma
Tima Teitelbauma | |
---|---|
Urodzić się |
Raya Teitelbauma
12 kwietnia 1943 |
Alma Mater |
Massachusetts Institute of Technology (SB) Carnegie Mellon University (doktorat) |
Kariera naukowa | |
Instytucje |
Cornell University (1973-2010) GrammaTech (1988-obecnie) Institut National de Recherche en Informatique et en Automatique (INRIA) w Rocquencourt, Francja (1982-83) |
Praca dyplomowa | Analiza minimalnej odległości błędów składniowych w programach komputerowych (1975) |
Doradca doktorski | Niko Habermanna |
Doktoranci |
Thomas W. Przedstawiciele Susan B. Horwitz Bill Pugh Yanhong Annie Liu |
Strona internetowa |
(Ray) Tim Teitelbaum (ur. 12 kwietnia 1943 r. w Stanach Zjednoczonych) to amerykański informatyk znany ze swoich wczesnych prac nad zintegrowanymi środowiskami programistycznymi (IDE) , edycją sterowaną składnią i obliczeniami przyrostowymi . Jest emerytowanym profesorem na Cornell University . Jako pedagog i członek wydziału Uniwersytetu Cornell od 1973 roku, został doceniony za szeroko zakrojone nauczanie programowania wprowadzającego oraz opiekę mentorską nad odnoszącymi sukcesy studentami. Jako biznesmen znany jest jako współzałożyciel GrammaTech , Inc. i za to, że był jej jedynym dyrektorem generalnym w latach 1988-2019.
Edukacja
Teitelbaum kształcił się w Massachusetts Institute of Technology i Carnegie Mellon University .
Kariera i badania
W 1978 roku Teitelbaum stworzył Cornell Program Synthesizer, jeden z przełomowych systemów, który zademonstrował moc ścisłej integracji zbioru narzędzi do tworzenia programów , z których wszystkie mają głęboką wiedzę na temat języka programowania i jego semantyki , w jedną ujednoliconą strukturę. Cornell Program Synthesizer używał PL/CS , wariantu dialektu językowego PL/C opracowanego w Cornell. Ponad 45 wykładów i demonstracji tego wczesnego IDE Teitelbauma w latach 1979-82, a także credo jego artykułu z 1981 r., którego współautorem był doktorant Thomas Reps stwierdził:
Programy nie są tekstem; są hierarchicznymi kompozycjami struktur obliczeniowych i powinny być edytowane, wykonywane i debugowane w środowisku, które konsekwentnie uznaje i wzmacnia ten punkt widzenia.
Następnie w 1984 roku pojawił się Synthesizer Generator, również wykonany we współpracy z Reps, który umożliwił wygenerowanie Program Synthesizer dla różnych języków programowania w oparciu o dostarczenie gramatyk atrybutów .
Motywowane znaczeniem natychmiastowej informacji zwrotnej w interaktywnych systemach, takich jak IDE, badania Teitelbauma w latach 80. i 90. koncentrowały się na problemie obliczeń przyrostowych:
Mając program P napisany w języku L i wynik wykonania P na wejściu x, jak można skutecznie określić wynik uruchomienia P na wejściu x', gdzie różnica między x a x' to jakiś mały przyrost x'-x .
W ramach pracy ze swoimi doktorantami Teitelbaum zbadał ten problem dla szeregu języków L, które obejmowały gramatyki atrybutów , SQL , języki funkcyjne pierwszego rzędu i rachunek lambda . Oprócz przyrostowych ewaluacji prace obejmowały również transformację programu metody, tj. automatyczne wyprowadzanie z P programu przyrostowego P', gdzie wykonanie P' na poprzednim wyniku P(x), inkrementacji x'-x i informacjach pomocniczych zachowanych z poprzednich wykonań, wydajnie wykonuje te same obliczenia, co wykonanie P na wejściu x'.
Praca Teitelbauma w GrammaTech miała na celu zaprojektowanie i wdrożenie narzędzi, które pomagają uczynić oprogramowanie bezpieczniejszym i bezpieczniejszym. Techniki obejmują statyczną analizę programu i dynamiczną analizę programu zarówno kodu źródłowego , jak i kodu maszynowego .
Nagrody i wyróżnienia
Teitelbaum był współodbiorcą nagrody Association for Computing Machinery SIGSOFT Retrospective Impact Paper Award (2010) za swój artykuł z 1984 r., którego współautorem był Thomas Reps , dotyczący generatora syntezatora.