C 프로그래밍 언어

The C Programming Language
C 프로그래밍 언어
The C Programming Language, First Edition Cover.svg
초판 표지.
작가브라이언 커니건
데니스 리치
언어영어
제목C 프로그래밍 언어
출판사프렌티스 홀
발행일자
1978년 (제1판)
1988년 (제2판
ISBN9780131101630

C Programming Language(때로는 K&R로 불리기도 한다)는 브라이언 케르니건과 데니스 리치가 쓴 컴퓨터 프로그래밍 책자로, 이 언어의 발전이 밀접하게 얽혀 있는 유닉스 운영체제의 공동 설계와 실행도 했다. 이 책은 C 프로그래밍 언어의 발전과 대중화의 중심이었고 오늘날에도 널리 읽혀지고 사용되고 있다. 왜냐하면 이 책은 원래 언어디자이너가 공동저술한 것이기 때문에, 그리고 이 책의 초판이 여러 해 동안 언어의 사실상의 표준으로 작용했기 때문에, 많은 사람들이 이 책을 C에 대한 권위 있는 참고자료로 여겼다.[1][2]

역사

C는 1970년대 초 벨 연구소에서 데니스 리치의해 켄 톰슨의 B를 증축한 버전으로 만들어졌다.[3] Bell Labs의 또 다른 직원 Brian Kernighan은 첫 번째 C 튜토리얼을 썼고,[4] 그는 Ritchie를 설득하여 언어에 관한 책을 공동 저술했다.[5] 케르니건은 이 책의 "expository" 자료의 대부분을 쓰곤 했는데, 리치의 참조 매뉴얼이 그 부록이 되었다.

1978년 2월 22일에 출판된 초판은 C 프로그래밍 언어에 관한 최초의 널리 보급된 책이었다. 그것의 C 버전은 때때로 K&R C ( 책의 저자들 뒤에)라고 불리며, 종종 이 초기 버전을 ANSI C로 표준화된 C의 후기 버전과 구별하기 위해 사용된다.[6]

1988년 4월, 이 책의 제2판이 출판되어 당시 새로운 ANSI C 표준에 따른 언어의 변화를 다루기 위해, 특히 표준 라이브러리에 참고 자료를 포함시켰다. 이 책의 제2판(2021년 현재, 가장 최근)은 이후 20개 이상의 언어로 번역되었다. 2012년에는 ePub, Mobi, PDF 형식으로 제2판의 eBook 버전이 발행되었다.

1989년(ANSI X3.159-1989년)에 처음 표준화된 ANSI C는 이후 여러 차례의 개정을 거쳤으며, 그 중 가장 최근의 것은 ISO/IEC 9899:2018(C17 또는 C18이라고도 함)으로 2018년 6월에 ANSI 표준으로 채택되었다. 그러나, 더 최근의 표준들을 다루기 위해 C 프로그래밍 언어의 새로운 판은 발행되지 않았다.

리셉션

1983년 8월 《Byte Magazine》에서 《[C 프로그래밍 언어]》는 C언어에 관한 결정판이다. 이 책이 나오기 까지는 더 이상 읽지 마!" 제리 푸넬은 그 해 잡지에서 이 책이 "아직 표준이긴 하지만... 좀 지루하다"고 썼다.[1] 그는 이어 "케르니건과 리치를 얻지 않고도 C언어를 배울 수 있지만, 그게 힘든 방법이야. C에 관한 만 사서 쓴다면 너도 너무 열심히 일하고 있는 거야."[7]

영향

C 프로그래밍 언어기술 쓰기의 모델로 자주 인용되어 왔으며, 검토자들은 그것을 명확한 발표와 간결한 처리를 가지고 있다고 묘사했다. 예시는 일반적으로 시스템 프로그래밍에 중점을 두고 일상적으로 언어를 사용할 때 접하기 쉬운 유형의 완전한 프로그램으로 구성된다. 이 책의 저자들은 다음과 같이 말했다.

우리는 초판의 간결함을 유지하려고 노력해왔다. C는 큰 언어가 아니며, 큰 책으로도 잘 제공되지 않는다. 우리는 C 프로그래밍의 중심인 포인터와 같은 중요한 특징에 대한 설명을 개선했다. 우리는 원래의 예시를 다듬었고, 몇 개의 장에 새로운 예시를 추가했다. 예를 들어, 복잡한 선언의 처리는 선언문을 단어로 변환하는 프로그램에 의해 강화되고, 그 반대의 경우도 마찬가지다. 이전과 같이 모든 예시는 기계 판독이 가능한 형태로 본문에서 직접 시험해 보았다.

preface to the second edition[8]
브라이언 커니건(1978년)의 "안녕, 월드!" 프로그램

책은 최소한의 작업 C 프로그램의 삽화로 '안녕, 세상!'이라는 텍스트만 출력하는 '안녕, 세상!' 프로그램을 소개했다. 그 이후로, 많은 텍스트들이 프로그래밍 언어를 도입하기 위한 규약을 따르고 있다.

ANSI C가 등장하기 전, 본문의 초판은 C 컴파일러의 작가들에게 사실상의 언어 표준의 역할을 했다. ANSI C의 표준화와 함께 저자들은 컴파일러 작가보다는 프로그래머를 위한 제2판을 보다 의식적으로 작성하면서 다음과 같이 말했다.

참조 매뉴얼인 부록 A는 표준이 아니라 더 작은 공간에 표준의 핵심을 전달하려는 우리의 시도다. 그것은 프로그래머가 이해하기 쉽지만 컴파일러 작성자를 위한 정의로서가 아니라, 그 역할이 표준 자체에 적절히 속하는 것을 의미한다. 부록 B는 표준 도서관의 시설을 요약한 것이다. 그것 역시 실행자가 아니라 프로그래머가 참고하기 위한 것이다. 부록 C는 원본으로부터의 변경사항을 간결하게 요약한 것이다.

preface to the second edition[8]

대학과 산업에서 C와 처음 함께 일했던 세대인 C 프로그래밍 언어가 프로그래머들에게 미치는 영향 때문에 많은 사람들이 표준적인 관행은 아니더라도 저자의 프로그래밍 스타일과 규약을 권장 사례로 받아들이게 되었다. 예를 들어 책의 두 판에 모두 제시된 프로그램의 코딩과 포맷 스타일은 흔히 "K&R 스타일" 또는 "원 트루 브레이스 스타일"이라고 불리며 유닉스리눅스 커널의 소스 코드에서 관습에 의해 사용되는 코딩 스타일이 되었다.

참고 항목

참조

  1. ^ Jump up to: a b Ward, Terry A. (August 1983). "Annotated C / A Bibliography of the C Language". Byte. p. 268. Retrieved 31 January 2015.
  2. ^ Prinz, Peter; Crawford, Tony (2005-12-16). C in a Nutshell. O'Reilly Media, Inc. p. 3. ISBN 9780596550714.
  3. ^ Ritchie, Dennis M. (1993). "The Development of the C Language". History of Programming Languages, 2nd Edition. Retrieved 2018-11-11.
  4. ^ "Leap In and Try Things: Interview with Brian Kernighan". Harmony at Work. October 24, 2009. Archived from the original on July 23, 2012. Retrieved 2013-03-03.
  5. ^ Computerphile (2015-08-18). "'C' Programming Language: Brian Kernighan - Computerphile". Retrieved 2018-11-11.
  6. ^ Kernighan, Brian W.; Ritchie, Dennis M. (February 1978). The C Programming Language (1st ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 0-13-110163-3.
  7. ^ Pournelle, Jerry (December 1983). "The User Looks at Books". Byte. p. 519. Retrieved 24 July 2016.
  8. ^ Jump up to: a b Kernighan, Brian; Ritchie, Dennis M. (March 1988). The C Programming Language (2nd ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 0-13-110362-8.

외부 링크

C 언어 표준 성공자