브라이언 커니핸
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
브라이언 커니핸은 캐나다 출신의 컴퓨터 과학자이자 저술가이다. 그는 토론토 대학교에서 공학 물리학 학사 학위를, 프린스턴 대학교에서 전기 공학 박사 학위를 받았다. 벨 연구소에서 1969년부터 2000년까지 근무했으며, 2000년부터 프린스턴 대학교 컴퓨터 과학과 교수로 재직 중이다. 커니핸은 C 프로그래밍 언어 개발에 기여하고, "C 프로그래밍 언어"를 저술하여 C 언어 보급에 크게 기여했다. 또한 AWK, Ratfor, m4, pic, ditroff, eqn 등 다양한 프로그래밍 언어와 소프트웨어 도구 개발에 참여했으며, "What You See Is All You Get"(WYSIAYG)라는 표현을 만들어 WYSIWYG 시스템의 한계를 지적했다. 주요 저서로는 "C 프로그래밍 언어", "유닉스 프로그래밍 환경", "프로그래밍의 실제" 등이 있다.
더 읽어볼만한 페이지
- 캐나다의 프로그래머 - 비탈릭 부테린
비탈릭 부테린은 이더리움의 공동 창립자이자 창안자이며, 블록체인 기술을 활용한 분산형 소프트웨어 개발 플랫폼 개발에 기여하고, 다양한 기부 활동과 저술 활동을 펼쳤다. - 캐나다의 프로그래머 - 제임스 고슬링
제임스 고슬링은 자바 프로그래밍 언어 개발자로 가장 잘 알려진 캐나다 출신의 컴퓨터 과학자로, 썬 마이크로시스템즈 등 여러 회사를 거쳐 현재는 은퇴 후 다양한 기업의 고문 및 이사로 활동하고 있다. - 유닉스 관계자 - 켄 톰프슨
켄 톰프슨은 미국의 컴퓨터 과학자로, 데니스 리치와 함께 유닉스 운영 체제를 개발하고 B 및 Go 프로그래밍 언어 개발에 참여했으며, 정규 표현식 구현과 톰프슨 구성 알고리즘 발명에 기여하여 1983년 튜링상을 수상했다. - 유닉스 관계자 - 빌 조이
빌 조이는 BSD 유닉스 개발에 핵심적인 역할을 하고 vi 에디터와 C 셸 개발에 기여했으며 썬 마이크로시스템즈를 공동 창업하여 NFS, SPARC 프로세서, 자바 등의 개발에 참여한 미국의 컴퓨터 과학자이자 기업가이다. - 프로그래밍 언어 설계자 - 시모어 페퍼트
남아프리카 공화국 출신 수학자이자 MIT 교수인 시모어 페퍼트는 구성주의를 발전시키고 로고(LOGO) 프로그래밍 언어 개발 및 레고 마인드스톰 개발에 기여하는 등 교육 기술 분야에서 선구적인 역할을 수행했다. - 프로그래밍 언어 설계자 - 존 매카시 (컴퓨터 과학자)
존 매카시는 LISP 프로그래밍 언어를 개발하고 '인공지능'이라는 용어를 처음 사용하는 데 기여한 인공지능 분야의 선구적인 컴퓨터 과학자로서, 가비지 컬렉션 기법 발명, 유틸리티 컴퓨팅 개념 제시 등 컴퓨터 과학 발전에 혁신적인 공헌을 했다.
브라이언 커니핸 - [인물]에 관한 문서 | |
---|---|
기본 정보 | |
![]() | |
출생 이름 | Brian Wilson Kernighan (브라이언 윌슨 커니핸) |
출생일 | 1942년 1월 30일 |
출생지 | 캐나다 온타리오주 토론토 |
국적 | 캐나다 |
거주지 | 알 수 없음 |
학력 | |
출신 대학 | 토론토 대학교 (응용과학 학사) |
박사 학위 | 프린스턴 대학교 (철학 박사) |
학위 논문 제목 | 프로그램 세분화와 관련된 일부 그래프 분할 문제 |
학위 논문 URL | http://www.worldcat.org/oclc/39166855 |
학위 취득 년도 | 1969년 |
박사 지도교수 | Peter Weiner (피터 위너) |
박사 졸업생 | 알 수 없음 |
경력 | |
직업 | 컴퓨터 과학자 |
근무 기관 | 프린스턴 대학교 |
업적 | |
주요 업적 | 유닉스 AWK A Mathematical Programming Language (AMPL) 커니핸-린 알고리즘 린-커니핸 휴리스틱 C 프로그래밍 언어 (책) |
기타 | |
웹사이트 | 브라이언 커니핸 개인 웹사이트 |
발음 (IPA) | /ˈkɜːrnɪhæn/ |
2. 생애
브라이언 커니핸은 1942년 캐나다 토론토에서 태어났다.[7] 1964년 토론토 대학교에서 공학 물리학 학사 학위를, 1969년 프린스턴 대학교에서 전기 공학 박사 학위를 받았다.[7][11][12]
1969년부터 2000년까지 벨 연구소에서 근무했으며, 2000년부터 프린스턴 대학교 컴퓨터 과학과 교수로 재직 중이다.[13] 프렌티스 홀 인터내셔널의 소프트웨어 편집자로, "소프트웨어 도구" 시리즈를 통해 "C/유닉스 사고방식"을 전파했다. 그의 "Ratfor"는 퍼블릭 도메인에 공개되었다.
무인도에 프로그래밍 언어 하나만 가지고 가야 한다면 C를 선택할 것이라고 말했다.[16] "유닉스"라는 용어를 만들었고, 유닉스 철학을 대중화하는 데 기여했다.[17] 또한 "What You See Is All You Get"(WYSIAYG)라는 WYSIWYG의 풍자적인 표현을 만들었다.[18]
1972년 B (프로그래밍 언어)에서 "hello"와 "world"를 사용한 예제는 널리 알려져 있으며,[19] 1978년에 구현한 알고리즘은 세계 최초의 컴퓨터 알고리즘 경매인 The Algorithm Auction에서 판매되었다.[20]
2002년 미국 공학 한림원, 2019년 미국 예술 과학 아카데미 회원으로 선출되었다.[22][23] 2022년 AWK 프로그래밍 언어 개선 작업을 하고 있다고 밝혔다.[24]
2. 1. 초기 생애 및 교육
1942년 캐나다 토론토에서 태어났다.[7] 1964년 토론토 대학교에서 공학 물리학 학사 학위를 받았다.[7] 1969년 프린스턴 대학교에서 피터 G. 와이너의 지도하에 "프로그램 분할과 관련된 몇 가지 그래프 분할 문제"라는 제목의 박사 학위 논문을 완성하여 전기 공학 박사 학위를 받았다.[11][12]2. 2. 경력
커니핸은 1969년부터 2000년까지 벨 연구소에서 근무했다.[13] 2000년부터 프린스턴 대학교 컴퓨터 과학과 교수로 재직 중이다.[13] 매년 가을 학기마다 전공자가 아닌 학생들을 위한 컴퓨팅 기초 강좌인 "우리 시대의 컴퓨터"를 가르치고 있다.[14][15]1996년에는 하버드 대학교에서 CS50 (컴퓨터 과학 입문 과정)을 가르쳤으며, 이는 데이비드 J. 말란에게 영향을 주어 다양한 형태로 확장되었다.[21]
그는 프렌티스 홀 인터내셔널의 소프트웨어 편집자였다. 그의 "소프트웨어 도구" 시리즈는 BASIC, 포트란, 파스칼 (프로그래밍 언어)에 대한 개편과 함께 "C/유닉스 사고방식"의 본질을 전파했으며, 특히 그의 "Ratfor"(rational FORTRAN)는 퍼블릭 도메인에 공개되었다.
무인도에 프로그래밍 언어 하나만 가지고 가야 한다면 C를 선택할 것이라고 말했다.[16]
커니핸은 "유닉스"라는 용어를 만들었고, 톰슨의 유닉스 철학을 대중화하는 데 기여했다.[17] 또한 "What You See Is All You Get"(WYSIAYG)라는 표현을 만들었는데, 이는 "What You See Is What You Get" (WYSIWYG)의 풍자적인 변형이다.[18] 커니핸의 용어는 WYSIWYG 시스템이 다른 맥락에서 유용할 수 있는 문서의 정보를 버릴 수 있음을 나타낸다.
1972년, 커니핸은 B (프로그래밍 언어)에서 "hello"와 "world"를 사용하여 문자열의 메모리 관리를 설명했는데,[19] 이는 오늘날 널리 알려진 상징적인 예가 되었다. 1978년에 처음 구현한 는 세계 최초의 컴퓨터 알고리즘 경매인 The Algorithm Auction에서 판매되었다.[20]
2002년 미국 공학 한림원 회원으로 선출되었고, 2019년 미국 예술 과학 아카데미 회원으로 선출되었다.[22][23]
2022년, 1977년에 개발에 참여했던 AWK 프로그래밍 언어의 개선 작업을 하고 있다고 밝혔다.[24]
3. 주요 업적
커니핸은 다양한 프로그래밍 언어와 소프트웨어 도구 개발에 기여했다.
- 1972년, B (프로그래밍 언어) 튜토리얼에서 "hello, world!" 프로그램을 처음으로 사용하여,[19] 프로그래밍 교육에 큰 영향을 미쳤다. 이 프로그램은 세계 최초의 컴퓨터 알고리즘 경매인 The Algorithm Auction에서 판매되었다.[20]
- 데니스 리치와 함께 C 프로그래밍 언어를 개발하고, "C 프로그래밍 언어(K&R)"를 저술하여 C 언어 보급에 기여했다. (K&R의 'K'가 커니핸을 의미한다.)[30]
- 알프레드 에이호, 피터 J. 와인버거와 함께 AWK 프로그래밍 언어를 개발했다. (AWK의 'K'가 커니핸을 의미한다.)[24]
- 1976년 Ratfor 개발[17]
- 1977년 데니스 리치와 함께 m4 매크로 처리 언어 개발[17]
- 1985년 AMPL 프로그래밍 언어 개발
- 1988년 troff용 pic 조판 언어 개발
- "What You See Is All You Get"(WYSIAYG)라는 표현을 만들어, WYSIWYG 시스템의 한계를 지적했다.[18]
- 유닉스 철학을 대중화하는 데 기여했으며, "유닉스"라는 용어를 만들었다.[17]
출판 연도 | 제목 | 공동 저자 |
---|---|---|
1974, 1978 | 프로그래밍 스타일의 원리(The Elements of Programming Style) | P. J. 플라우거 |
1976 | 소프트웨어 도구(Software Tools) | P. J. 플라우거 |
1978, 1988 | C 프로그래밍 언어(The C Programming Language) | 데니스 리치 |
1981 | 파스칼의 소프트웨어 도구(Software Tools in Pascal) | P. J. 플라우거 |
1984 | 유닉스 프로그래밍 환경(The Unix Programming Environment) | 롭 파이크 |
1988, 2023 | AWK 프로그래밍 언어(The AWK Programming Language) | 알프레드 에이호, 피터 J. 와인버거 |
1999 | 프로그래밍의 실제(The Practice of Programming) | 롭 파이크 |
2003 | AMPL: 수학적 프로그래밍을 위한 모델링 언어, 2판(AMPL: A Modeling Language for Mathematical Programming, 2nd ed.) | 로버트 포러, 데이비드 게이 |
2011 | D는 디지털을 의미한다: 정보를 잘 아는 사람이 컴퓨터와 통신에 대해 알아야 할 사항(D is for Digital: What a well-informed person should know about computers and communications) | |
2015 | Go 프로그래밍 언어(The Go Programming Language) | 앨런 도노반 |
2017 | 디지털 세계 이해하기: 컴퓨터, 인터넷, 개인 정보 보호 및 보안에 대해 알아야 할 사항(Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security) | |
2018 | 수백만, 수십억, 수조: 너무 많은 숫자의 세계에서 자신을 방어하기(Millions, Billions, Zillions: Defending Yourself in a World of Too Many Numbers) | |
2019 | 유닉스: 역사와 회고록(UNIX: A History and a Memoir) | [27] |
4. 저서
커니핸은 프로그래밍 언어, 소프트웨어 도구, 컴퓨팅 일반에 관한 여러 권의 책을 저술했다. 그의 저서는 전 세계적으로 번역되어 프로그래머와 컴퓨터 과학도에게 널리 읽히고 있다.
커니핸은 1976년 P. J. 플로거와 함께 ''소프트웨어 도구''를, 1978년 데니스 리치와 함께 ''C 프로그래밍 언어''(K&R)를 저술했다. 1982년에는 P. J. 플로거와 ''프로그래밍 스타일 요론''을, 1984년 롭 파이크와 ''유닉스 프로그래밍 환경''을 저술했다. 1988년에는 알프레드 에이호, 피터 J. 와인버거와 함께 ''AWK 프로그래밍 언어''를, 1999년 롭 파이크와 함께 ''프로그래밍 수련법''(원제 The practice of programming)을 저술했다. 2020년에는 ''유닉스의 탄생''(원제 UNIX: A History and a Memoir)과 ''숫자가 만만해지는 책''(원제 Defending Yourself in a World of Too Many Numbers)을 출간했다.
다음은 커니핸이 저술한 책의 일본어판 제목, 원제(영어), 출판 연도, 공저자, 일본어판 역자를 나타낸 표이다.
일본어 제목 | 원제(영어) | 출판 연도 | 공저자 | 일본어판 역자 |
---|---|---|---|---|
소프트웨어 작법 | Software Tools영어 | 1976년 | P. J. 플로거 | 키무라 이즈미 |
프로그래밍 언어 C | The C Programming Language영어 | 1978년 | 데니스 리치 | 이시다 하루히사 |
프로그램 서법 | The Elements of Programming Style영어 | 1982년 | P. J. 플로거 | 키무라 이즈미 |
UNIX영어 프로그래밍 환경 | The Unix Programming Environment영어 | 1984년 | 롭 파이크 | 이시다 하루히사 |
프로그래밍 언어 AWK영어 | The AWK Programming Language영어 | 1988년 | 알프레드 에이호, 피터 J. 와인버거 | 아다치 타카노리 |
프로그래밍 작법 | The Practice of Programming영어 | 1999년 | 롭 파이크 | 후쿠자키 토시히로 |
프로그래밍 언어 Go | The Go Programming Language영어 | 2015년 | 알란 도노반 | 시바타 요시키 |
4. 1. 주요 저서 목록
출판 연도 | 한국어판 제목 | 원제 (영어) | 공저자 | 한국어판 번역자 | |
---|---|---|---|---|---|
1974, 1978 | 프로그래밍 스타일의 원리 | The Elements of Programming Style | P. J. 플라우거 | ||
1976 | 소프트웨어 도구 | Software Tools | P. J. 플라우거 | ||
1978, 1988 | C 프로그래밍 언어 | The C Programming Language | 데니스 리치 | 이시다 하루히사 | |
1981 | 파스칼의 소프트웨어 도구 | Software Tools in Pascal | P. J. 플라우거 | ||
1984 | 유닉스 프로그래밍 환경 | The Unix Programming Environment | 롭 파이크 | 이시다 하루히사 | |
1988, 2023 | AWK 프로그래밍 언어 | The AWK Programming Language | 알프레드 에이호, 피터 J. 와인버거 | ||
1999 | 프로그래밍의 실제 | The Practice of Programming | 롭 파이크 | 후쿠자키 토시히로 | |
2003 | AMPL: 수학적 프로그래밍을 위한 모델링 언어, 2판 | AMPL: A Modeling Language for Mathematical Programming, 2nd ed. | 로버트 포러, 데이비드 게이 | ||
2011 | D는 디지털을 의미한다: 정보를 잘 아는 사람이 컴퓨터와 통신에 대해 알아야 할 사항 | D is for Digital: What a well-informed person should know about computers and communications | [25] | ||
2015 | Go 프로그래밍 언어 | The Go Programming Language | 앨런 도노반 | 시바타 요시키[26] | |
2017 | 디지털 세계 이해하기: 컴퓨터, 인터넷, 개인 정보 보호 및 보안에 대해 알아야 할 사항 | Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security | |||
2018 | 수백만, 수십억, 수조: 너무 많은 숫자의 세계에서 자신을 방어하기 | Millions, Billions, Zillions: Defending Yourself in a World of Too Many Numbers | |||
2019 | 유닉스: 역사와 회고록 | UNIX: A History and a Memoir | [27] | ||
2020 | 숫자가 만만해지는 책 | Defending Yourself in a World of Too Many Numbers | |||
2020 | 유닉스의 탄생 | UNIX: A History and a Memoir |
4. 2. "왜 파스칼은 내가 가장 좋아하는 프로그래밍 언어가 아닌가"
1981년 니클라우스 비르트의 파스칼 비판글인 "왜 파스칼은 내가 가장 좋아하는 프로그래밍 언어가 아닌가"를 발표했다. 이 글은 AT&T 컴퓨팅 과학 기술 보고서 #100으로 발표되었다.[1] 이 비판의 일부 내용은 ISO 7185 (프로그래밍 언어 - 파스칼) 제정 이후에는 구식이 되었다.[1]참조
[1]
웹사이트
Kernighan, Brian W. - LC Linked Data Service: Authorities and Vocabularies {{!}} Library of Congress, from LC Linked Data Service: Authorities and Vocabularies (Library of Congress)
https://id.loc.gov/a[...]
2023-03-03
[2]
뉴스
To the Liberal Arts, He Adds Computer Science
https://www.nytimes.[...]
2002-10-31
[3]
논문
Some Graph Partitioning Problems Related to Program Segmentation
Princeton University
[4]
Youtube
"C" Programming Language: Brian Kernighan - Computerphile
[5]
웹사이트
The History of Unix
https://www.youtube.[...]
2018-11-07
[6]
Youtube
Nerd Talk - Doug McIlroy & Brian Kernighan
https://www.youtube.[...]
2021-10-22
[7]
간행물
Interview with Brian Kernighan
http://www.linuxjour[...]
2003-07-29
[8]
ACMPortal
[9]
웹사이트
An Oral History of Unix
http://www.princeton[...]
2007-06-11
[10]
웹사이트
Brian Kernighan {{!}} Computer Science Department at Princeton University
https://www.cs.princ[...]
[11]
웹사이트
Brian Kernighan - The Mathematics Genealogy Project
https://www.genealog[...]
[12]
서적
Some graph partitioning problems related to program segmentation
https://catalog.prin[...]
1969
[13]
웹사이트
Brian Kernighan | Computer Science Department at Princeton University
https://www.cs.princ[...]
[14]
웹사이트
COS 109, Fall 2021: Home Page
https://www.cs.princ[...]
[15]
저널
COS 109: Computers in our world
https://www.cs.princ[...]
[16]
웹사이트
An Interview with Brian Kernighan
http://www-2.cs.cmu.[...]
2000-07-01
[17]
기술보고서
A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986
http://www.cs.dartmo[...]
[18]
웹사이트
Brian Kernighan: Geek of the Week
https://www.red-gate[...]
2010-05-19
[19]
웹사이트
THE PROGRAMMING LANGUAGE B
https://www.bell-lab[...]
Bell Laboratories
2021-10-16
[20]
웹사이트
Brian Kernighan {{ndash}} Hello World
https://www.artsy.ne[...]
[21]
서적
Proceedings of the 41st ACM technical symposium on Computer science education
[22]
웹사이트
Dr. Brian W. Kernighan
https://nae.edu/3018[...]
[23]
웹사이트
Brian W. Kernighan
https://www.amacad.o[...]
[24]
웹사이트
Unix legend, who owes us nothing, keeps fixing foundational AWK code
https://arstechnica.[...]
2022-08-23
[25]
서적
D is for Digital: What a well-informed person should know about computers and communications
[26]
서적
The Go Programming Language
[27]
서적
UNIX: A History and a Memoir
[28]
뉴스
To the Liberal Arts, He Adds Computer Science
http://www.nytimes.c[...]
2002-10-31
[29]
웹사이트
A TUTORIAL INTRODUCTION TO THE LANGUAGE B
http://cm.bell-labs.[...]
[30]
웹사이트
Interview with Brian Kernighan
http://www.linuxjour[...]
Linux Journal
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com