토니 호어
1. 개요
토니 호어는 영국의 컴퓨터 과학자이다. 스리랑카에서 태어나 영국에서 교육을 받았으며, 옥스퍼드 대학교에서 고전 및 철학을 전공하고, 영국 해군에서 복무하며 러시아어를 배웠다. 이후 옥스퍼드 대학교에서 통계학을 공부하며 컴퓨터 프로그래밍을 시작했고, 모스크바 대학교에서 기계 번역을 연구했다. 엘리엇 브라더스에서 ALGOL 60을 구현하고 알고리즘을 개발했으며, 퀸즈 대학교 벨파스트와 옥스퍼드 대학교에서 교수로 재직하며 퀵 정렬, 호어 논리, 통신 순차 프로세스(CSP) 등 컴퓨터 과학 분야에 기여했다. 널 참조의 발명에 대해 "10억 달러짜리 실수"라고 언급하기도 했다. 튜링상, 교토상 등을 수상했으며, 왕립 학회 펠로우, 미국 국립 공학 아카데미 회원 등으로 활동했다.
| 본명 | 찰스 앤터니 리처드 호어 |
|---|---|
| 출생일 | 1934년 1월 11일 |
| 출생지 | 영국령 실론 콜롬보 |
| 국적 | 영국 |
| 배우자 | 질 핌 |
| 자녀 | 3명 |
| 거주지 | 영국 케임브리지 |
| 학사 | 옥스퍼드 대학교 |
|---|---|
| 석사 | 옥스퍼드 대학교 |
| 기타 | 모스크바 대학교 (교환 학생) |
| 직업 | 컴퓨터 과학자 |
|---|---|
| 근무 기관 | 엘리엇 브라더스 퀸스 대학교 벨파스트 옥스퍼드 대학교 모스크바 대학교 마이크로소프트 리서치 |
| 주요 분야 | 컴퓨터 과학 |
|---|---|
| 주요 업적 | 퀵 정렬 퀵 셀렉트 호어 논리 널 참조 통신 순차 프로세스 (CSP) 구조적 프로그래밍 ALGOL |
| 수상 내역 | 튜링상 (1980년) 해리 H. 구드 기념상 (1981년) 패러데이 메달 (1985년) 컴퓨터 파이오니어 상 (1990년) 교토상 (2000년) IEEE 존 폰 노이만 메달 (2011년) 로열 메달 (2023년) |
|---|---|
| 기타 | 왕립 학회 회원 영국 왕립 공학 학술원 회원 |
| 지도 학생 | 클리프 존스 빌 로스코 아우구스토 삼파이오 앤드류 P. 블랙 스테판 브룩케 데이비드 나우만 윌리엄 스튜어트 |
|---|
| 공식 웹사이트 | 토니 호어 공식 웹사이트 |
|---|
-
소련에 거주한 영국인 -
R. 팜 덧
R. 팜 덧은 1896년 영국에서 태어난 공산주의 이론가이자 저술가로, 영국 공산당 창립 멤버로 활동하며 월간 잡지를 창간하고 편집했으며, 소련과 스탈린주의를 옹호하고 파시즘과 사회 혁명에 대한 저서를 남겼다. -
스리랑카에 거주한 영국인 -
잭 처칠
제2차 세계 대전에서 활, 검, 백파이프를 사용해 "매드 잭"이라는 별명을 얻은 영국군 장교 잭 처칠은 폴란드 침공에서 활로 독일군을 사살하고 여러 전장에서 활약하며 훈장을 받았고, 전후에는 공수부대 교관으로 복무하며 특이한 삶을 살았다. -
모스크바 대학교 -
안드레이 콜모고로프
안드레이 콜모고로프는 확률론, 난류, 고전 역학 등 다양한 분야에서 업적을 남겼으며, 확률 공간의 공리를 제시하여 현대 확률론의 기초를 다진 러시아의 수학자이다. -
모스크바 대학교 -
모스크바 국립 대학교
2. 생애 및 교육
토니 호어는 영국령 실론의 콜롬보에서 영국인 부모 사이에서 태어났다. 1956년 옥스퍼드 대학교에서 서양 고전학 학사 학위를 취득하고, 1년 더 옥스퍼드 대학교에서 대학원 과정에 해당하는 통계학을 공부했다. 1956년부터 1958년까지 영국 해군에서 군 복무를 한 후, 소비에트 연방의 모스크바 대학교에서 러시아어와 자연어 기계 번역 연구를 시작했다.
2.1. 초기 생애
토니 호어는 실론(현재의 스리랑카) 콜롬보에서 영국인 부모에게서 태어났다. 그의 아버지는 식민지 공무원이었고, 어머니는 차 재배자의 딸이었다. 호어는 영국 옥스퍼드의 드래곤 스쿨과 캔터베리의 킹스 스쿨에서 교육받았다. 그 후 옥스퍼드 대학교 머튼 칼리지에서 고전 및 철학("Greats")을 공부했다. 1956년 졸업 후 18개월 동안 국방 의무를 영국 해군에서 수행했으며, 그곳에서 러시아어를 배웠다. 1958년 옥스퍼드 대학교로 돌아와 통계학 대학원 수료증을 공부했으며, 레슬리 폭스에게 페란티 머큐리에서 오토코드를 배운 후 컴퓨터 프로그래밍을 시작했다. 그 후 영국 문화원 교환 학생으로 모스크바 대학교에 가서 안드레이 콜모고로프 밑에서 기계 번역을 공부했다.
2.2. 교육 과정
토니 호어는 실론(현재의 스리랑카) 콜롬보에서 영국인 부모에게서 태어났다. 그의 아버지는 식민지 공무원이었고, 어머니는 차 재배자의 딸이었다. 호어는 영국에서 옥스퍼드의 드래곤 스쿨과 캔터베리의 킹스 스쿨에서 교육을 받았다. 그 후 그는 옥스퍼드 대학교의 머튼 칼리지에서 고전 및 철학("Greats")을 공부했다. 1956년에 졸업한 후 18개월 동안 국방 의무를 영국 해군에서 수행했으며, 그곳에서 러시아어를 배웠다. 1958년 옥스퍼드 대학교로 돌아와 통계학에서 대학원 수료증을 공부했으며, 레슬리 폭스에게 페란티 머큐리에서 오토코드를 배운 후 컴퓨터 프로그래밍을 시작했다. 그 후 영국 문화원 교환 학생으로 모스크바 대학교에 가서 안드레이 콜모고로프 밑에서 기계 번역을 공부했다.
2.3. 군 복무 및 러시아어 학습
토니 호어는 실론(현재의 스리랑카) 콜롬보에서 영국인 부모에게서 태어났다. 1956년 옥스퍼드 대학교를 졸업한 후 18개월 동안 국방 의무를 영국 해군에서 수행했으며, 그곳에서 러시아어를 배웠다. 1958년 옥스퍼드 대학교로 돌아와 통계학 대학원 수료증을 공부했고, 영국 문화원 교환 학생으로 모스크바 대학교에 가서 안드레이 콜모고로프 밑에서 기계 번역을 공부했다.
2.4. 통계학 및 컴퓨터 프로그래밍 입문
토니 호어는 실론(현재의 스리랑카) 콜롬보에서 영국인 부모에게서 태어났다. 아버지는 식민지 공무원이었고, 어머니는 차 재배자의 딸이었다. 호어는 영국 옥스퍼드의 드래곤 스쿨과 캔터베리의 킹스 스쿨에서 교육받았다. 이후 옥스퍼드 대학교 머튼 칼리지에서 고전 및 철학("Greats")을 공부했다. 1956년 졸업 후 18개월 동안 국방 의무를 영국 해군에서 수행하며 러시아어를 배웠다. 1958년 옥스퍼드 대학교로 돌아와 통계학 대학원 수료증을 공부했으며, 레슬리 폭스에게 페란티 머큐리에서 오토코드를 배운 후 컴퓨터 프로그래밍을 시작했다. 그 후 영국 문화원 교환 학생으로 모스크바 대학교에 가서 안드레이 콜모고로프 밑에서 기계 번역을 공부했다.
2.5. 모스크바 유학
토니 호어는 1958년 옥스퍼드 대학교에서 통계학 대학원 수료증을 취득한 후, 영국 문화원 교환 학생으로 모스크바 대학교에 유학을 갔다. 모스크바 대학교에서 안드레이 콜모고로프에게 기계 번역을 배웠고, 러시아어를 배우면서 자연어의 기계 번역에 대한 연구를 시작했다.
3. 학술 및 연구 경력
호어는 1956년 옥스퍼드 대학교에서 서양 고전학 학사 학위를 취득하고, 대학원 과정으로 통계학을 공부했다. 1956년부터 1958년까지 영국 해군에서 복무했고, 소비에트 연방의 모스크바 대학교에서 러시아어를 배우며 자연어 기계 번역 연구를 시작했다.
그의 주요 연구 업적은 다음과 같다:
* 퀵 정렬 및 퀵 선택 알고리즘 개발
* 호어 논리 개발
* 동시 처리 간 상호 작용을 위한 형식 언어 통신 순차 프로세스(CSP) 개발 (occam 등 다양한 프로그래밍 언어로 구현)
* 모니터(동기화) 개념을 사용한 컴퓨터 운영 체제 구조화
* 프로그래밍 언어의 공리적 사양 연구
2009년 소프트웨어 컨퍼런스에서 호어는 널 참조를 "10억 달러짜리 실수"라고 칭하며 공개적으로 사과했다. 1965년 객체 지향 언어(ALGOL W)에서 참조에 대한 첫 포괄적인 유형 시스템을 설계할 당시, 구현의 용이성 때문에 널 참조를 포함시켰으나, 이로 인해 지난 40년간 수많은 오류, 취약성, 시스템 충돌이 발생했다고 밝혔다.
3.1. 엘리엇 브라더스
1960년 소련을 떠나 런던에 위치한 소규모 컴퓨터 제조 회사인 엘리엇 브라더스 주식회사에서 일하기 시작했다. 그곳에서 ALGOL 60 언어를 구현하고 주요 알고리즘을 개발하기 시작했다.
3.2. 국제 표준 활동
1960년, 호어는 소련을 떠나 런던에 있는 소규모 컴퓨터 제조 회사인 엘리엇 브라더스 주식회사에서 일했다. 그는 국제 정보 처리 연맹(IFIP) 워킹 그룹 2.1의 일원으로서 알고리즘 언어 및 계산 분야에 참여했다. 이 워킹 그룹은 ALGOL 60 및 ALGOL 68 언어를 사양하고 유지 관리하며 지원하는 역할을 맡았다.
3.3. 벨파스트 퀸즈 대학교
1968년, 벨파스트 퀸즈 대학교의 컴퓨팅 과학 교수가 되었다. 그는 1960년에 엘리엇 브라더스라는 작은 컴퓨터 제조 회사에서 일하기 시작하여, ALGOL 60 구현 및 각종 알고리즘 개발에 착수했다.
3.4. 옥스퍼드 대학교
1977년, 토니 호어는 크리스토퍼 스트래치의 사망 이후 옥스퍼드로 돌아와 옥스퍼드 대학교 컴퓨팅 연구소(현재 옥스퍼드 대학교 컴퓨터 과학과)의 프로그래밍 연구 그룹을 이끌었다. 1988년 이 그룹이 설립된 이래 2000년 옥스퍼드에서 은퇴할 때까지 최초의 크리스토퍼 스트래치 컴퓨팅 교수를 역임했다. 그는 현재 옥스퍼드 대학교의 명예 교수이며, 영국 케임브리지에 있는 마이크로소프트 리서치의 수석 연구원이기도 하다.
호어가 수년간 이끌었던 옥스퍼드 학과는 CSP 및 Z과 같은 형식적 명세 언어를 연구했다. 그러나 이러한 연구들은 업계에서 예상만큼 널리 채택되지 못했고, 1995년 호어는 원래의 가정을 되돌아보게 되었다.
10 years ago, researchers into formal methods (and I was the most mistaken among them) predicted that the programming world would embrace with gratitude every assistance promised by formalisation to solve the problems of reliability that arise when programs become large and more safety-critical. Programs have now got very large and very critical – well beyond the scale which can be comfortably tackled by formal methods. There have been many problems and failures, but these have nearly always been attributable to inadequate analysis of requirements or inadequate management control. It has turned out that the world just does not suffer significantly from the kind of problem that our research was originally intended to solve.영어
4. 주요 연구 업적
호어는 퀵 정렬 및 퀵 선택 알고리즘, 호어 논리, 동시 처리 간의 상호 작용을 지정하는 데 사용되는 형식 언어 통신 순차 프로세스(CSP), 모니터(동기화) 개념을 사용한 컴퓨터 운영 체제 구조화, 프로그래밍 언어의 공리적 사양 등 컴퓨터 과학 분야에 중요한 기여를 했다.
1965년 널 참조를 발명했고, 2009년 소프트웨어 컨퍼런스에서 "10억 달러짜리 실수"라고 부르며 과장된 어조로 사과했다. 그는 이것이 지난 40년 동안 수많은 오류, 취약성 및 시스템 충돌을 일으켜 10억 달러 상당의 고통과 피해를 야기했을 것이라고 추정했다.
호어가 수년간 이끌었던 옥스퍼드 학과는 CSP 및 Z과 같은 형식적 명세 언어를 연구했지만, 업계에서 예상만큼 채택되지 못했고, 1995년 호어는 원래의 가정을 되돌아보게 되었다.
그는 소프트웨어 설계의 어려움에 대해 다음과 같이 말했다.
> "97% 정도의 경우, 작은 효율에 대해서는 생각할 필요가 없다. 성급한 최적화는 만악의 근원이다."
위 인용구는 도널드 커누스의 것으로 알려져 있지만, 커누스 본인은 호어의 말이라고 했고, 호어는 이를 부정하고 있다.
4.1. 퀵 정렬 및 퀵 선택
엘리엇 브라더스 주식회사(Elliott Brothers Ltd)에서 ALGOL 60을 구현하면서 주요 알고리즘을 개발하기 시작했다. 그의 정렬 및 선택 알고리즘에는 퀵 정렬과 퀵 선택이 있다.
4.2. 호어 논리
호어의 가장 중요한 연구는 그의 정렬 및 선택 알고리즘 (퀵 정렬 및 퀵 선택), 호어 논리, 동시 처리 간의 상호 작용을 지정하는 데 사용되는 형식 언어 통신 순차 프로세스(CSP, occam (프로그래밍 언어)과 같은 다양한 프로그래밍 언어로 구현됨), 모니터(동기화) 개념을 사용한 컴퓨터 운영 체제 구조화, 프로그래밍 언어의 공리적 사양이다.
4.3. 통신 순차 프로세스 (CSP)
호어의 가장 중요한 연구는 퀵 정렬 및 퀵 선택 알고리즘, 호어 논리, 동시 처리 간의 상호 작용을 지정하는 데 사용되는 형식 언어 통신 순차 프로세스(CSP, occam (프로그래밍 언어)과 같은 다양한 프로그래밍 언어로 구현됨), 모니터(동기화) 개념을 사용한 컴퓨터 운영 체제 구조화, 프로그래밍 언어의 공리적 사양 등이다.
호어가 수년간 이끌었던 옥스퍼드 학과는 CSP 및 Z과 같은 형식적 명세 언어를 연구했다. 그러나 이것들은 업계에서 예상한 만큼 채택되지 못했고, 1995년 호어는 원래의 가정을 되돌아보게 되었다.
4.6. 널 참조 (Null Reference)
1965년, 토니 호어는 객체 지향 언어인 ALGOL W에서 참조를 위한 포괄적인 형식 시스템을 설계하면서 널 참조를 발명했다. 그의 목표는 컴파일러의 자동 검사를 통해 모든 참조 사용의 안전성을 보장하는 것이었지만, 구현이 쉽다는 이유로 널 참조를 포함시켰다.
2009년 소프트웨어 컨퍼런스에서 토니 호어는 널 참조를 발명한 것에 대해 "10억 달러짜리 실수"라고 부르며 공개적으로 사과했다. 그는 널 참조가 지난 40년 동안 수많은 오류, 취약성 및 시스템 충돌을 일으켜 10억 달러에 달하는 피해를 초래했을 것이라고 추정했다.
5. 수상 및 영예
| 연도 | 수상 및 영예 |
|---|---|
| 1973 | ACM 프로그래밍 시스템 및 언어 논문상 ("데이터 표현의 정확성 증명" 논문) |
| 1978 | 영국 컴퓨터 학회 명예 펠로우 |
| 1980 | "프로그래밍 언어의 정의 및 설계에 대한 근본적인 기여"로 튜링상 수상. 테네시주 내슈빌에서 열린 ACM 연례 회의에서 시상 위원회 의장인 월터 칼슨이 상을 수여. 수상 연설록은 ACM 통신에 게재. |
| 1981 | 해리 H. 구드 기념상 |
| 1982 | 왕립 학회 펠로우 |
| 1985 | 패러데이 메달 |
| 1987 | 벨파스트 퀸스 대학교 명예 과학 박사 학위 |
| 1993 | 배스 대학교 명예 과학 박사 학위 |
| 1998 | 옥스퍼드 켈로그 칼리지 명예 펠로우 |
| 2000 | 교육 및 컴퓨터 과학 발전에 대한 공로로 기사 작위 수여 (2000년) |
| 2000 | 교토상 정보 과학 부문 |
| 2005 | 왕립 공학 아카데미 펠로우 |
| 2006 | 미국 국립 공학 아카데미 회원 (알고리즘, 운영 체제 및 프로그래밍 언어 분야의 컴퓨터 과학에 대한 근본적인 기여) |
| 2006 | 컴퓨터 역사 박물관 (CHM) 펠로우, "퀵 정렬 알고리즘 개발 및 프로그래밍 언어 이론에 대한 평생 기여" |
| 2007 | 헤리엇-와트 대학교 명예 박사 학위 |
| 2007 | 아테네 경제 및 비즈니스 대학교 (AUEB) 정보학부 명예 과학 박사 학위 |
| 2007 | 프리드리히 L. 바우어 상, 뮌헨 공과대학교 |
| 2011 | SIGPLAN 프로그래밍 언어 업적상 |
| 2011 | IEEE 존 폰 노이만 메달 |
| 2012 | 바르샤바 대학교 명예 박사 학위 |
| 2013 | 마드리드 콤플루텐세 대학교 명예 박사 학위 |
| 2023 | 왕립 학회 로열 메달 |
6. 저서
* 올레-요한 달, 에츠허르 데이크스트라와 공저, 구조적 프로그래밍 (Academic Press, 1972). ISBN 0-12-200550-3.
* 통신 순차 프로세스 (Prentice Hall 국제 컴퓨터 과학 시리즈, 1985). ISBN 978-0131532717 (하드백), ISBN 978-0131532892 (페이퍼백). (http://www.usingcsp.com/ 에서 PDF 형식으로 온라인 이용 가능.)
* C. B. 존스 편집, 컴퓨팅 과학 에세이 (Prentice Hall 국제 컴퓨터 과학 시리즈, 1989). ISBN 978-0-13-284027-9.
* 마이클 J. C. 고든과 공저, 기계화된 추론과 하드웨어 설계 (Prentice Hall 국제 컴퓨터 과학 시리즈, 1992). ISBN 978-0-13-572405-7.
* 허 지펑과 공저, 프로그래밍의 통합 이론 (Prentice Hall 국제 컴퓨터 과학 시리즈, 1998). ISBN 978-0-13-458761-5.