Media Log

만들면서 배우는 리스프 프로그래밍
콘래드 바스키 지음, 조태훈 옮김/한빛미디어
오래전에 폴 그레이엄의 해커와 화가와 에릭 레이먼드의 해커가 되는 방법을 읽으면서, 언젠가는 나도 꼭 LISP를 공부해서 궁극의 위대한 해커가 되어야지 하고 불타올랐었을 때가 있었는데, 한해 한해를 흘려 보내다가 오늘까지 왔다. 그러고 보니 중간에 마법사 책으로 리스프를 공부한다고 까불다가 크게 좌절한 적이 한번있긴 했다.(책을 펼칠 때마다 마법처럼 떡실신해서 잠이 들었는데, 어느 날은 그렇게 잠이 들고 아침에 눈을 뜨자마자 누운채로 그 자리에서 다시 읽었는데 또 잠이 들고 말았다. 맙소사)

이번 11월달에 나오는 책 중 기다리고 기다리던 책이 하나 있었는데 바로 이 리스프! 마법사 책처럼 압박감이 들지도 않고 겉표지만 본다면 왠지 좀 만만해 보이기까지 한다.

이번에는 부디 LISP의 재미에 빠져들 수 있기를.

저작자 표시 비영리 동일 조건 변경 허락
신고
  1. 비제이 at 2011.11.22 01:14 신고 [edit/del]

    재호님은 꼭 위대한 해커가 될 수 있을껍니다^^

    Reply
  2. Favicon of http://mastojun.net BlogIcon Mastojun at 2011.11.23 01:18 신고 [edit/del]

    저도 이 책 기다리고 있어요~ 리더스 마지막 분기 증정 책 리스트에 있길 바라고 있는 중 입니다 ㅎ.ㅎ

    Reply
    • Favicon of http://www.benjaminlog.com BlogIcon 김재호 at 2011.11.23 10:12 신고 [edit/del]

      아 그러고보니 리더스에서 책받을 것이 하나 더 남아있었네요. 근데 그 때 주는 책들은 싼책들만 주더라고요. 이 책은 없을 것도 같아요. 넣어주면 좋은데!

  3. 장현덕 at 2011.12.06 14:23 신고 [edit/del]

    이 책 보고 있는데 재밌더라~
    근데 계속 보다보니깐 메타 프로그래밍이 LISP를 많이 닯아있더라고 ㅎㅎ

    Reply

submit
Art of UNIX Programming - 8점
Eric S. Raymond 지음, 김희석 옮김/정보문화사


오픈소스나 유닉스 계열에서 꽤나 유명한 에릭 레이몬드가 쓴 책이다.
이 책의 제목만 봐서는 유닉스 프로그래밍에 대한 고급 기법들을 다룰 것 같지만, 단지 유닉스 철학만을 이야기한다. 도날드 커누스의 Art of Computer Programming의 이름을 본 따서 지었다는데, 책 주제와 상관없는데도 제목을 이렇게 지은 걸 보면 어지간히도 커누스의 Art of 시리즈가 감명 깊었는가보다.( 책 이름이던지 내용이던지 아니면 커누스 그 자체던지간에 )

책의 목차를 한번 살펴보자. 소주제들은 제외했다.

Part 1 UNIX의 오늘
Chapter 1 철학 : 중요한 것은 철학이다
Chapter 2 역사 : 두 문화에 대한 이야기
Chapter 3 대조 : UNIX 철학과 다른 것을 비교하기

Part 2 설계
Chapter 4 모듈화 : 간단하게, 단순하게!
Chapter 5 텍스트화 : 우수한 프로토콜은 우수한 습관을 만든다
Chapter 6 투명성 : 빛이 있으라!
Chapter 7 멀티프로그래밍 : 서로 다른 작업을 위한 프로세스들
Chapter 8 미니언어 : 노래하는 기호를 찾아
Chapter 9 생성 : 명세를 한 단계 높게
Chapter 10 구성 : 순조롭게 출발하기
Chapter 11 인터페이스 : UNIX 환경의 사용자 인터페이스 디자인 패턴
Chapter 12 최적화
Chapter 13 복잡함 : 되도록 단순하게 그러나 지나치지 않게

Part 3 구현
Chapter 14 언어 : C 언어이어야 하는가? 아닌가?
Chapter 15 툴 : 개발의 용병들
Chapter 16 재사용 : 바퀴를 다시 발명하지 않기 위해서

Part 4 공동체
Chapter 17 이식 가능성 : 소프트웨어의 이식성과 표준 따르기
Chapter 18 문서화 : 소프트웨어를 종이-중심의 세계로 설명하기
Chapter 19 오픈소스 : 신 UNIX 공동체의 프로그래밍
Chapter 20 미래 : 위험 그리고 기회


vi와 emacs를 비롯한 편집기에 대한 평가와 c, java, python, lisp등 여러 언어에 대한 평가가 특히 재밌다.

편집기나 언어에 대한 평가는 언제나 인터넷을 뜨겁게 달구는 주제이다.
Effective C++의 스캇마이어스도 Effective 시리즈 중 어떤 책에서 편집기에 관한 이야기를 잠깐 언급했는데, 그 때 최고의 편집기는 바로 emacs라고 했다. 나는 그 글을 읽고 바로 Emacs를 설치하고 연습해봤는데, 몇 일 못가서 바로 포기했다. ;)

에릭 레이몬드 역시 그렇지만, 리눅스 계통의 해커들은 c, java, C#보다는 perl 이나 python, LISP 같은 언어들을 높게 평가하는 경향이 있다.
하지만, 조엘 온 소프트웨어의 조엘 같은 경우에는 자기 주위의 해커들( 아마도 마이크로소프트의 천재들 )은 그렇지 않다며 반박하는 것도 재밌다.

에릭 레이몬드는 윈도우즈를 정말 더럽게도 싫어하는데, 윈도우즈를 욕하는 내용 또한 역시 재밌는 볼거리이다.

이런 내용들 말고도 재밌게 읽은 만한 내용들이 많이 들어있다.
꼭 유닉스 프로그래머가 아니더라도 가볍게 읽어보기 좋을 것이다.

에릭 레이몬드의 글 중 이 책에 없고 인터넷에 올려진( 어딘가에서 한번씩은 읽어봤을만한 ) 재밌는 글들 또한 많다.

다음 링크들에서 볼 수 있다.
How To Become A Hacker
해커가 되는 방법
Why Python
How To Ask Questions The Smart Way
좀더 나은 질문을 하기 위한 방법
에릭 레이몬드의 홈페이지



신고
  1. Favicon of http://bombfox.textcube.com BlogIcon bombfox at 2009.10.23 23:08 신고 [edit/del]

    전 읽어 볼려다 포기한책....ㅠㅠ

    Reply

submit
해커와 화가 - 10점
폴 그레이엄 지음, 임백준 옮김/한빛미디어

어떤 사람들은 폴 그레이엄이 건방지거나 혹은 그가 주장하는 바가 틀렸다고 말하면서도 하나 같이 그의 글은 재밌다고 한다. -에릭 싱크, 조엘, 그리고 이 책의 역자인 임백준까지

나도 폴 그레이엄의 글을 좋아한다.

이 책을 읽고 나서 그의 글에 매료되어서 개인 블로그를 즐겨찾기 해두고 종종 가보곤 한다.( 물론 내 빌어먹을 영어 실력 탓에 그 재밌는 최신 글들을 잘 이해할 수 없다는 것이 화가 나지만. )

이 책의 내용은 조엘 온 소프트웨어 처럼, 폴 그레이엄의 블로그에 이미 쓰여진 많은 에세이들을 기반으로 작성되었다.

나는 그가 그림을 얼마나 잘 그리는 지는 따위는 관심 없다.
단지, 이 책에서 그가 LISP, Python, 펄, 그리고 해커를 말할 때면 내 집중력은 200%가 되었다.

프로그래밍 언어에 대한 비교는 언제나 많은 논란거리를 가지고 오는 위험한 주제이기도 하면서 또한 프로그래머들의 흥미를 유발하는 최고의 주제이기도 하다.

그는 LISP에 대한 광신도였다.

그의 블로그에서 그는 자바가 쓰레기라고 말하고 있지는 않지만, 자바 프로그래머는 파이썬 프로그래머보다 멍청하다고 말한다.
자바 사람들이 반발하자, 그는 자바 프로그래머가 멍청하다는 것이 아니라 상대적으로 파이썬 프로그래머가 영리하다. 라고 다시 말한다.

그는 LISP에 대한 광신도이면서 다른 언어로는 파이썬과 펄, 그리고 루비를 인정한다.
에릭 레이몬드가 윈도우즈를 쓰레기라고 번번히 말하듯이 그 역시 다른 언어들은 가차없이 깍아내린다.
아마 그는 속으로 이렇게 생각하고 있을 것이 분명하다.
( 도대체 어떻게 자바 따위로 프로그래밍을 할 수 있다는 말이지? )

하지만 내가 사용하는 언어가 쓰레기가 된들 뭐 어떤가. 그의 글은 재밌는걸.
그리고 LISP와 파이썬이 미치도록 공부하고 싶어지는 것을.

실제로 그랬다. 이 책을 덮고나서부터 머리속에 LISP와 파이썬 밖에 없었다.
LISP를 접해보려고 했지만, 괜찮은 국내 서적을 찾을 수가 없었다.
인터넷에서 배우지 뭐, 했으나 괴물 형상의 괄호 투성이 언어와 영어로된 설명은 날 금방 질리게 만들었다.

LISP는 나중으로 미뤘지만 Python과 펄 그리고 루비 마저 버릴 수는 없었다.
하나씩 책을 구해서 읽어보고는 그 중 내 두번째 무기로써 Python을 선택하게 되었다.
( 첫 번째 무기는 물론 C++ 이다. ^_^ )

비즈하드 프로젝트를 하면서 파이썬으로 뭔가를 만들어보고 싶은 욕구가 넘쳐난다.
꽤 적당하다고 생각되는 몇 몇 기능들은 이미 다른 언어로 만들어져 있기 때문에 굳이 바꾸지 않고 앞으로 새로 추가될 기능에 대해서 한 번 시도해 보려고 한다.

아 얼마나 즐거울까.



신고
  1. at 2010.03.25 10:18 [edit/del]

    비밀댓글입니다

    Reply

submit