The Great Inside
← 전체 인물 보기

Photo by Denise Panyik-Dale, taken at the Japan Prize Foundation ceremony, 19 May 2011, CC BY 2.0; cropped from the original · Wikimedia Commons, File:Dennis Ritchie (right) Receiving Japan Prize.jpeg (1195x1628), uploaded from Flickr (dpanyikdale/5740011186); cropped to Dennis Ritchie only, no resampling · CC BY 2.0

컴퓨터 과학자 · 20세기

데니스 리치

1941–2011

주요 업적 분야

기술과학혁신

아직 성격 매칭에 포함되지 않았습니다 — 기록된 근거가 성격 모델 전체를 다루기에는 충분하지 않습니다. 이 페이지의 다른 모든 내용은 자유롭게 확인하실 수 있습니다.


핵심 특성


주요 업적

리치는 1971년경부터 1973년 사이 벨 연구소에서 C 프로그래밍 언어를 만들었다. 켄 톰프슨(Ken Thompson)의 B 언어에 자료형 체계를 더하고 그 컴파일러를 직접 작성한 것이다. 1973년 초에는 현대 C의 핵심이 완성되었고, 그해 C로 PDP-11용 유닉스 커널이 다시 작성되었다. 뉴욕 타임스는 그의 부고에서 C가 지금도 널리 쓰이며 C++와 자바 같은 후속 언어가 그 개념을 토대로 한다고 전했다.

리치는 벨 연구소에서 켄 톰프슨과 함께 유닉스 운영체제를 공동 개발했다. 톰프슨이 1969년 PDP-7에서 시작한 작업에 리치가 합류했으며, 그는 장치를 파일로 표현한다는 발상을 자신이 보탰다고 말하면서도 대부분의 아이디어와 작업은 톰프슨의 몫이라고 밝혔다. 두 사람은 1973년 유닉스 대부분을 C로 다시 작성했다. 톰프슨과 리치는 1983년 ACM 튜링상을, 그리고 미국 국가기술훈장(1998년도 훈장, 1999년 4월 수여)을 함께 받았다.

1978년 리치와 브라이언 커니핸(Brian Kernighan)은 『The C Programming Language』를 출간했다. C를 널리 구할 수 있는 형태로 처음 설명한 책으로, 10년 넘게 지나 공식 표준이 채택될 때까지 이 언어의 기준 문서 역할을 했다. 설명 부분은 대부분 커니핸이 썼고, 리치는 부록의 언어 참조 설명서와 유닉스 연동 장을 맡았다. 뉴욕 타임스에 따르면 1978년판과 1988년판은 수백만 부가 팔렸고 25개 언어로 번역되었다.


삶의 장면들

1988년 3월 리치는 ANSI C 위원회(X3J11)에 초안에 대한 긴 공식 의견서를 보냈고, 이를 comp.lang.c에도 올렸다. 그는 초안의 const 규정이 언어를 자체 라이브러리와 모순되게 만든다고 지적했고, 제안된 noalias 한정자는 '가증스러운 것(abomination)'이므로 '살아남아서는 안 된다'고 주장했다. 이 글을 다시 게재한 곳의 주석에 따르면 const로 한정된 객체에 대한 대입 금지 조항은 나중에 삭제되었고 noalias도 빠졌다.

표준 위원회에 상세하고 타협 없는 반대 의견을 공식 기록으로 남기고, 그것이 AT&T가 아닌 자신의 의견임을 밝힌 일은 독립적 사고와 부합한다. 다만 이 서술과 결과에 대한 주석은 모두 해당 글의 재게재본에서 나온 것이어서, 위원회가 입장을 바꾼 이유는 여기서 독립적으로 확인되지 않는다. 독립적 사고

리치와 스티브 존슨(Steve Johnson)이 유닉스 커널을 인터데이터 8/32라는 새 기종으로 처음 옮길 때, 6판 소스의 한 코드 구간에는 '이것을 이해하리라고 기대하지 않는다(You are not expected to understand this)'라는 주석이 달려 있었다. 리치는 이 말이 '시험에 나오지 않는다'는 뜻이었을 뿐, 작성자들도 그 부분을 완전히 이해하지는 못했기 때문이라고 설명한다. 그는 문맥 전환 방식이 근본적으로 잘못되었다는 데 두 사람이 합의하기까지 약 일주일의 고심이 필요했고, 이후 컴파일러를 계속 손보는 대신 코루틴 제어 전달 기본 동작을 아예 다시 만들었다고 쓴다.

땜질로는 고칠 수 없는 이유를 일주일가량 들여 규명한 뒤 그 방식을 통째로 교체한 일은 분석적 엄밀함과 부합한다. 다만 이 이야기는 전적으로 리치 본인의 회고에 의존한다. 분석적 엄밀성


전환점

1972년 톰프슨은 초기 버전의 C로 유닉스 커널을 다시 쓰려 잠시 시도했다가 포기했다. 리치에 따르면 당시 C에는 구조체가 없어 커널의 각종 테이블을 다루기 번거로웠다. 그 뒤 1년 동안 리치는 구조체를 추가하고 컴파일러를 개선했으며, 1973년 그와 톰프슨은 PDP-11용 유닉스 커널을 C로 다시 작성했다. 리치는 이 성공이 유닉스의 유틸리티도 C로 옮길 자신감을 주었고, 이어 유닉스를 다른 기종으로 옮기는 작업으로 이어졌다고 썼다.

리치가 1973년의 재작성을 톰프슨의 앞선 실패한 시도 위에서 이룬 공동 작업('우리')으로 서술하며, 부족했던 언어 기능을 자신이 채웠다는 점은 협업과 부합한다. 다만 세부 내용은 주로 리치 본인의 서술에 의존한다. 협업 성향


비슷한 인물

전체적인 프로필이 이 사람과 닮은 사람들이에요.

반대 프로필

경쟁 상대가 아니라, 살펴볼 만한 다른 프로필 형태예요.


출처