C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[324] C 언어가 어려운 이유 (퍼온글입니다.)
홍용혁 [] 6022 읽음    2001-02-09 14:47
하이텔에 올라있던 글이래요...

컴퓨터 산업을 뒤흔든 한 발표에서 켄 톰슨, 데니스 리치, 브라이언 커니건, 이상 3명은 그들이 만든 유닉스와 C언어가 20년동안이나 살 아남은 단지 매우 공들인 만우절 장난이었음을 고백했다. 최근의 유닉스월드 소프트웨어 개발포름에서 톰슨은 다음과 같은 사실을 고백했다:

"1969년 AT&T는 GE/Honeywell/AT&T가 공동으로 진행했던 멀틱스프로젝트를 끝냈습니다. 브라이언과 저는 니콜라우스 워스(역자주:이 이름을 어떻게 읽느냐 하는것에 대해서는 시비를 걸지말길 바란다. 대부분 자기 맘대로 읽고 있고 난 지금 '영어'를 쳐다보고 있는것만으로도 머리가 아프다) 교수의 스위스 ETH연구실에서 개발된 파스칼의 초기판을 가지고 일하고 있었고, 그 세련된 단순함과 언어의 막강함에 감명을 받았었죠.

데니스는 당시 막 `Bored of the Rings(반지에 질렸다???)'를 다 읽었던 참이었는데 아시다시피 그 소설은 대문호 톨킨의 `Lord of theRings(반지의 주인)' (역자주 : 이 책은 환상(fantasy) 소설의 효시로서 톨킨의 뛰어난 고대언어학지식을 기반으로 쓰여진 불후의 명작이다. 울티마, 로그, 영화 코난 등의 환상 소설류의 게임 및 영화는 아마 이 소설이 없었다면 존재하지 못했을 것이다. 반지전쟁 이라는 이름으로 번역된 바 있다)을 흉내낸 국가 풍자 패러디의 하나였습니다. 장난으로 우리는 멀틱스 환경과 파스칼의 패러디를 하기로 결정했죠.

데니스와 저는 운영체제를 맡았습니다. 우린 멀틱스를 보고 -가능한 아주 복잡하고 암호같이 모호해서- 일반 사용자들은 아예 사용할 엄두를 내지도 못할 새로운 시스템을 설계했습니다. 그리고, 멀틱스의 패러디로 이름을 유닉스로 정했죠. 뭐 일부는 좀 비꼬는듯한 암시를 주기 위한 이유도 있었지만요.

그 다음 데니스와 브라이언은 파스칼을 완전히 뒤섞어 놓은 듯한 언어를 만들고 이름을 'A'라고 했습니다. 그뒤 사람들이 그 언어로 진짜 중요한 프로그램을 개발하려고 시도하고 있다는것을 알고나서 우리는 재빨리 언어를 암호화해서 더욱 사용하기 어렵게 만들었고 이언어는 'B'언어를 거쳐 BCPL, 그리고 결국 C가 되었습니다. 우린 다 음과 같은 문장을 깨끗하게 컴파일할수 있을 때가 되서야 비로서 개발을 중단했습니다:
for(;P("\n"),R-;P("|"))for(e=C;e-;P("_"+(*u++/8)Ŵ))P("|"+(*u/4)Ŵ);
현대의 프로그래머들이 이렇게 암호같은 문장을 허용하는 개떡같은 언어를 사용할 것이라고는 전혀 생각지 못했습니다. 그건 우리의 상식밖이었죠. 우린 실제로 이걸 소련에 팔아서 소련의 컴퓨터 과학기술을 20년이상 퇴보하게 만들 생각이었거든요.

상상해보세요. AT&T와 다른 미국회사들이 실제로 유닉스와 C를 사용하려고 발악하기 시작했을 때 우리가 얼마나 놀랐겠는지. 그 기업들이 이 1960년대의 기술적 패러디를 이용해서 근근히 써먹을 만한 응용 프로그램을 개발하기에 충분한 기술을 축적하기까지는 20년이 걸렸습니다. 하지만, 우린 일반적인 유닉스, C 프로그래머들의 고집에 매우 감명을 받았습니다(물론 농담입니다.그게 어디 재정신입니까?).

브라이언, 데니스, 그리고 저는 지난 몇 년간 어떤 일을 하든 애플매신토시(역자주: 이렇게 읽는게 아니었남?!) 에서 파스칼만을 사용하고 있습니다. 그리고, 사실 오래전의 우리의 어리석은 장난으로부터 야기된 혼돈과 혼란과 진짜 엉망이 된 프로그래밍에 대해 진정으로 죄의식을 느끼고 있습니다."

AT&T, MICRO$OFT(역자주: 영어로 써야만 MS에 대한 내 감정을 표현할수가 있었다), 휴렛 패커드, GTE, NCR(역자주 : 금전 등록기로 유명하죠), DEC 등을 포함한 주요한 유닉스, C 판매업자들과 고객들은이 때 그 사실에 대한 어떠한 평도 거부했다.

터보 파스칼, 터보 C/C++등의 파스칼과 C툴 개발로 유명한 볼랜드사는 다음과 같이 말했다.

"우린 이미 몇년동안 이 사실에 대해 의심하고 있었습니다. 그래서 지속적으로 파스칼 제품을 향상시키고 C제품을 개발하는데 더이상의 지원을 하지 않을 생각입니다."

한편, IBM의 대변인은 순간 대책없이 웃어대기 시작하더니 결국 급히 요청한 RS-6000에의 운명에 대한 기자회견을 연기해야만 했고 단지 `VM이 _지금_ _정말로_ _곧_ 나올 겁니다'라고 말했다. 파스칼, 모듈라2와 오베론 언어를 만든 ETH연구소의 니콜라우스 워스(역자주: 따지지 말라니까?!)교수는 조금은 비비꼬은 말로 P.T.Barnum(역자주: I have no idea!)이 맞았다고만 말했다.

최근 나온 관련된 이야기에 믿을 만한 정보통에 따르면 MICRO$OFT의 빌게이츠도 MeSsy-DOS와 원도즈운영체제에 관해 이와 비슷한 고백을 곧 할 것이라고 한다.

또한, IBM의 대변인은 Virtual Machine(VM) 제품이 아예 빗나간 국제적인 장난이라는 사실을 부인하기 시작했다.

.. 하지만 그 중에서도 우리의 장난을 꿰뚫어 본 사람이 있었다. 그는 Stroustroup 이라는 사람으로 우리의 장난을 꽤 재미있어 했다. 그리고 그도 우리의 놀이 동참하기 시작하였다. 그는 C를 더욱 복잡 하게 만들어 도저히 사용할 수 없도록 만들기 시작했다.
그리하여 나온 것이 바로 C++ 라고 하는 언어였다.

그가 C++를 발표하자 모든 사람들은 다시 C++를 지원하려고 노력을 하기 시작했고 ANSI 에서도 표준화 연구를 위해 대거 인원이 투입되었다. 그러자 Stroustroup은 당황하기 시작하였다. 그래서 더욱 헷갈리도록 하기 위해 탬플릿을 추가하였고 예외처리도 넣었다. 그래도 사람들이 계속 따라오려고 노력을 하자 다중상속을 추가하여 컴파일러 구현을 거의 불가능하게 만들었지만 vendor들은 기를 쓰고 이를 구현하려고 노력을 하였던 것이다.

...... 여기까지 .....

이글을 읽고 나니까 뒤통수 맞은 느낌이 들었습니다.

여러분들은 어떻게 생각하세요

+ -

관련 글 리스트
324 C 언어가 어려운 이유 (퍼온글입니다.) 홍용혁 6022 2001/02/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.