리스프는 1958년 처음 만들어졌으며 처음에는 수학 표기법을 나타내기 위해서 만들어졌다고 합니다. (당시에는 수식을 표기하기에 적절한 프로그램이 없었나 봅니다) 현재 사용되고 있는 프로그래밍 언어가운데 두번째로 오래된 언어라고 합니다. 이런 리스프가 왜 아직또 쓰이고 있는 것일까요? 오래된 언어들이 살아남는건 특징적인 가치를 지니고 있어서 일텐데, 그럼 리스프가 가진 현대에 유용한 특징적인 가치란 무엇일까요? 이 책에서는 RDF 형식을 가진 메타데이터를 다루는데 사용하기에 매우 적잘하다고 합니다. 시멘틱 웹에서도 그러한 이유로 이용되고 있다고 하지요.
리스프는 괄호를 많이 가진 코드로 유명합니다. 표기법이 명확하기로 유명하다고는 하는데 이 책을 보기 전에는 몰랐었습니다... ㅎ 어떻냐면요. 제가 주로 사용하는 델파이에서는
(3 + (2 * 4))
(+ 3 (* 2 4))
기에는 좀더 편안하고 읽기가 좋으시죠? 하지만 리스프의 방식도 생각해보면 나쁘지 않습니다. 금방 익숙해지기에도 무리가 없어 보이고 말이죠. 코드의 기본은 이런식이라고 보시면 됩니다. 처음에는 조금 적응이 안되는 듯 싶지만, 계속 읽어가다 보시면 그렇지 않다는 것을 알게 되실 겁니다.
제가 이번 리뷰에는 2주간 집에 가지 못하는 일이 생겨서 직접 실습은 못하고 그저 읽는 것 만 했음에도 코드를 알아보는데 무리가 없었습니다. 그만큼 이 책이 잘 적혀 있기도 합니다 :)
알고보니 이 책의 원서가 꽤 유명하더군요. 아마존에서도 좋은 평가를 받고 있고, 제 일본 친구이면서 IT계 종사자인 모씨도 이 책의 원서를 읽은 적이 있다고 하더군요. 국내에서 리스프에 대한 책이 나올꺼란 생각을 못하고 있어서 저도 나중에 읽어봐야지 하고 인터넷 서점 보관함에 원서를 넣어놓았던 적이 있는데요, 구매할 필요가 없을 것 같습니다.
이 책의 특징 중에 하나는 독자의 흥미와 관심을 지속적으로 이어나기기 위해서 게임을 만드는 과정을 통해서 배우게 된다는 점입니다. 그리고 가장 큰 잠점은 만화가 중간중간 있다는 점입니다. 일반 삽화나 일러스트와는 다른 재미있게 몰두할 수 있도록 여러가지 노력을 한 흔적이 보인다는게 읽는 동안 흐뭇하게 바라볼 수 있었던 계기가 되지 않았나 생각이 듭니다.
맨 앞쪽 리스프 환경 세팅에 대해서는 너무 간략하게 넘어가는게 조금 아쉬웠습니다. 뭐 구성에 어려움이 딱히 있진 않지만 다운받아서 설치하면 된다. 실행은 명령창에서 어떻게 하면 된다. 이렇게만 되어 있는데 친절함이 조금 아쉽더군요. 하지만 이 점은 크게 불편한 점은 아니니 넘어갑니다. 사실은 책 자체보다는 함수형 언어이기 때문에 어색함과 익숙치 못함에서 오는 불편함이 이 책의 유일한 단점이라고 할 수 있을 것 같습니다. 게다가 위에서 말했던 이유로 제가 실습을 거의 못해봤기 때문에 잘 이해가 안가는 부분도 꽤 있었구요... (이 부분은 뭐 제 불찰이니 ㅇㅅㅇ;;)
끝까지 내용을 따라가보면 아 이런 언어도 있구나, 이런 점은 나중에 개인 프로젝트에서 써먹어도 괜찮겠다. 오브젝트 파스칼과는 이런식으로 조화롭게 사용해도 되겠구나 하는 이런저런 생각들이 들었습니다. 부족했던 실습에 대해서는 차츰 만회하는 시간을 가져봐야겠습니다.
전체적으로 이 책의 출판 자체에 큰 의미가 있다고 생각이 됩니다. 비인기 언어, 유저가 적고, 잘 팔릴것 같지 않은 책인데도 (IT 출판 업계가 책으로 레퍼런스를 얻는 경우는 초보 독자가 대부분이라고 생각하기 때문임. 책이 나빠서 안팔릴것 같다는 것이 아님;;) 이렇게 멋지게 나와주었다는 점이 저에게는 너무 기쁘구요. 나중에라도 한번 만져봐야지 했던 리스프라서 더더욱 기쁘다 할 수 있겠습니다. 완성도 또한 높은 편이기 때문에 다 방면에서 활용 가능한 리스프를 배우고 싶어하시는 분들이라면 읽어보시면 좋을 것같네요 ^^