[과학기술리뷰] C Programming Language 소개

수유너머웹진 2019.04.22 16:54 조회 수 : 1

C Programming Language 소개

 

 

 

조정현(수유너머104 세미나 회원)

 

 

 

 

개인용 컴퓨터를 켜보자. 노트북을 켜봐도 된다. 화면이 밝아지면서, 컴퓨터는 로그인 정보를 입력하라고 요구한다. 키보드를 통해 자판을 두드려, 로그인 정보를 입력하면 모니터에는 바탕화면이 뜬다. 바탕화면은 상징기호의 모임이다. 바탕화면에는 휴지통 아이콘이 있다. 이 아이콘은 우리가 업무를 볼 때 옆에 있는 휴지통을 상징화 한 것이다. 바탕화면에는 문서(document) 아이콘이 있다. 우리가 일하면서 작성하는 서류를 대표한다. 바탕화면에는 폴더 아이콘이 있다. 서류나, 문서를 넣는 폴더를 나타내는 기호이다. 컴퓨터 바탕화면이 보여주는 상징은 확실하다. 우리 책상 위(Desk Top)에 나오는 사물을 아이콘으로, 즉 상징기호로 화면에 보여 주는 것이다. 개인용 컴퓨터는 우리에게 책상 위에서 하는 작업을, 아이콘이라는 상징기호를 조작하여 처리하도록 도와주는 도구이다.

 

영화에는 나오지만, 실제 세상에는 보기 힘든 컴퓨터를 상상을 해 보자.
개인용 컴퓨터를 켠다. 화면은 밝아진다. 다음과 같은 문자가 화면에 뜬다.
안녕! 세상아!!”

 

 

 


컴퓨터가 안녕! 세상아!!” 라고 우리에게 말을 걸었다. 우리는 세상을 향해, 자신이 존립하고 있음을 선언하는 컴퓨터를 만난 것이다. 당신은 이 컴퓨터에 대해 어떻게 반응할 것인가. 새로운 종()인 독립된 개체를 만났다는 느낌을 받지 않겠는가?. 누구인가 컴퓨터를 이렇게 만들었다면, 그는 컴퓨터에게 생명을 부여하려 한 사람이다. 이 사람에게 컴퓨터는 인간에게 봉사하는 존재가 아니라 독립된 개체이다.

 

우리가 개인용 컴퓨터을 이용할 때 보이는 바탕화면 역시 프로그램이다. 이 프로그램은 인간이 수행하는 작업을 보조하는 도구로써, 상품으로 만들어진 대상이다. 이에 반해, 우리가 위에서 상상해 봤던, “안녕!! 세상아라 이야기하며, 세상에 자신이 있음을 선언한 프로그램은, 자신을 위해 존재하는 프로그램이다. 누구를 위하여 봉사하기 위해 존재하는, 그래서 상품으로 이용되기 위해 만들어진 프로그램과는 결이 다르다.

 

‘C Programming Language’는 데니스 리치와 브라이언 커닝햄이 쓴 프로그래밍 기술서적이다.이 책에 나오는 첫 번쨰 예제 프로그램이 화면에 “hello, world!”를 표시하는 프로그램이다. 세상에 안녕!! 세상아!!” 라고 외치는 바로 그 프로그램이다. 데니스 리치는 켄 톰슨이란 사람과 함께 C라는 프로그래밍 언어를 만든 사람이다.  

 

 

 

C언어를 만든 사람이 자신이 만든 프로그래밍 언어를 설명한 책이 ‘C Programming Language’ 란 책이다. 쉽게 말해 저자 직강이다. 나온지 50년 가까이 된 책이라, 이 책을 보면서 C프로그램밍을 공부하는 사람은 최근에는 거의 없을 것이다. 그러나, 이 책에 나오는 첫 번째 예제는 프로그래머에게 가장 유명한 프로그램으로, 이 예제로 인해 이 책은 지금까지 이야기 되고 있다.

 

프로그래머가 되고자 하는 사람이 보통 제일 처음 만드는 것이 “hello, world”를 화면에 출력하는 프로그램이다.  python이던, C++이던, Java 이던, 어떤 프로그래밍 언어를 배우던지, 대부분의 프로그래밍 책에서 첫 예제는 “hello world” 를 화면에 출력하는 프로그램을 든다. 모두 ‘C Programming Language’라는 책의 영향이다.

 

데니스 리치는 아마도 컴퓨터를 인간을 위해 봉사하는 도구로만 보지 않았을 것이다. 그에게 컴퓨터는 사고하는 기계였을 것이고, 사고한다는 점에서만 보면 인간과 다른 점이 없었을 것이다. 이런 생각이 있어 컴퓨터가 “hello, world!!”라고 선언하도록 프로그램을 만들었을 것이다.

 

프로그래머의 작업이 컴퓨터가 특정 동작을 수행하도록 명령어를 입력하는 것이라고 규정하면, 프로그래머는 주인이고, 컴퓨터는 하인이 된다. 그러나, 프로그래머는 컴퓨터를 인간과 같이 사고하는 개체로 만들어 내는 사람이라고 규정하면, 프로그래머와 컴퓨터는 주인과 하인 관계가 아닌, 동등한 관계가 되고, 프로그래머는 어느새 컴퓨터와 물아일체(物我一體)하는 경험을 하게 된다. 프로그래머가 곧 컴퓨터가 되는 과정, 주체인 나는 없어지고, 객체인 컴퓨터와 동일화 되는 과정을 경험한다. 이 단계에 이르면 프로그래머는 인간의 사고방식으로 생각하는 게 아니라 컴퓨터의 동작원리로 생각하게 된다. 난 이 단계를 문리(文理)가 트인다라고 표현한다.

 

컴퓨터와 일체화 되는 단계는 형이상학적 주체가 사라지는 경험을 하는 과정이다. 이 과정이 쉽다고는 할 수 없다. 어떤 사람에게는 상당히 지루한 과정이고, 어떤 사람에게는 도저히 도달할 수 없는 단계이다. 형이상학적 주체를 절대 포기할 수 없는 사람은 컴퓨터와 물아일체하는 프로그래머가 될 수 없다.

 

5.633 세계 속 어디에서 형이상학적 주체가 발견될 수 있는가?

 

비트겐슈타인의 논리-철학논고에 나오는 말이다. 이 언명을 실생활에서 느끼고 싶다면, 이 책 ‘C Programming Language’을 읽으면서, 프로그래밍의 세계로 들어오길 권한다. 미리 이야기 하지만, 처음에는 무척 지루하다. 그러나, 문리가 트이고 다시 보면, 감동하게 되는 책이다.

번호 제목 글쓴이 날짜 조회 수
104 [과학기술리뷰] 책에는 진리가 없다 수유너머웹진 2019.06.26 72
103 [과학기술리뷰] 린 마굴리스의 「생명이란 무엇인가」 리뷰 수유너머웹진 2019.04.26 20
» [과학기술리뷰] C Programming Language 소개 수유너머웹진 2019.04.22 1
101 [인문학리뷰] 『코뮨이 돌아온다-우리 친구들에게』 수유너머웹진 2019.04.22 6
100 [인문학리뷰] 스캇 펙의 『거짓의 사람들』 수유너머웹진 2019.03.22 3
99 [인문학리뷰] 『아픔이 길이 되려면』,『우리는 왜 분노에서 벗어나지 못하는가』,『위험한 정치인』 수유너머웹진 2019.02.24 3
98 [과학기술리뷰] 과학잡지 『에피』 6권 리뷰 - ‘필드 사이언스’와 ‘수능 리뷰’를 중심으로 수유너머웹진 2019.02.24 4
97 레비나스&화이트헤드_<타인의 얼굴> 5,6,7장 후기 수유너머웹진 2019.01.21 4
96 <삶을 위한 철학 수업>의 "삶과 자유", "만남과 자유" 후기 수유너머웹진 2019.01.21 7
95 장자세미나_잡편 33.천하편 - 조정현 수유너머웹진 2019.01.16 0
94 장자세미나_인간세 편 - 조정현 수유너머웹진 2019.01.16 3
93 [책리뷰] 공동의 슬픔 -바오 닌, 전쟁의 슬픔을 읽고 file 수유너머104 2017.12.21 758
92 [탐방기] 공간탐방기 - 서문 file 장한길 2017.11.06 293
91 [강연리뷰]그들의 1960년대, 대안적 앎의 공간으로서의 전공투2 [6] file 큰콩쥐 2017.10.26 336
90 [강연리뷰]그들의 1960년대, 대안적 앎의 공간으로서의 전공투1 [2] file 큰콩쥐 2017.10.25 645
89 [탐방기] 냉전의 인질로 붙들린 사람들의 이야기2 file 큰콩쥐 2017.10.13 280
88 [탐방기] 냉전의 인질로 붙들린 사람들의 이야기1 [5] file 큰콩쥐 2017.09.28 1215
87 [책리뷰]바흐친에 접근하는 세 가지 키워드 [1] file Edie 2017.09.13 1339
86 [책리뷰]삼켜야했던 평화의 언어⎯병역거부가 말했던 것, 말하지 못했던 것 file Edie 2017.06.30 700
85 "있음"의 존재론-불교를 철학하다 수유너머웹진 2016.12.29 4
CLOSE