메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

만들면서 배우는 리스프 프로그래밍: Land of LISP

한빛미디어

번역서

절판

  • 저자 : 콘래드 바스키
  • 번역 : 조태훈
  • 출간 : 2011-11-18
  • 페이지 : 560 쪽
  • ISBN : 9788979148756
  • 물류코드 :1875
  • 초급 초중급 중급 중고급 고급
3.8점 (5명)
좋아요 : 17
게임을 만들면서 개념을 학습하는 리스프 입문서

1958년에 개발된 리스프는 현재까지 쓰이는 함수형 언어이다. 리스프 이후로 함수형 언어는 다양한 변종이 등장했으나 기본 개념은 리스프를 계승하고 있다. 현대 언어는 익명 함수, 람다 연산, 메타 프로그래밍 등의 고급 프로그래밍 기법을 채택하고 있는데, 이는 함수형 언어의 특징을 차용한 것이다. 함수형 언어는 멀티코어 환경, 병렬 실행 환경에 강점이 있으며, 대용량, 대규모 분산 처리에 용이하다는 장점이 있어 인기를 얻고 있다. 실제로 구글의 대규모 분산 처리가 가능한 맵리듀스 알고리즘의 맵과 리듀스라는 용어도 리스프에서 유래했다. 리스프와 함수형 언어는 현대 컴퓨터 과학에 많은 영향을 끼치고 있으며 그 영향력은 점차 확대되고 있다. 또한, 함수형 언어의 학습은 프로그래밍에 대한 사고를 확장하게 하는 장점이 있어 프로그래머의 관심이 높아지고 있다.이제 리스프로 함수형 프로그래밍을 경험해보자.
  • 리스프 문법의 속성 완성 과정
  • 간결하고 우아한 함수형 프로그램 작성하기
  • 매크로 사용
  • DSL(Domain-Specific Language) 만들기
  • 웹 서버 개발
  • 개발한 웹 서버를 이용한 웹 브라우저 게임 만들기
  • 운명의 주사위 게임 개발
  • 오크 배틀 게임 개발


콘래드 바스키 저자

콘래드 바스키

콘래드 바스키는 마이애미 대학교에서 MD 학위를 받았으며, 20년 가까이 프로그래밍을 해왔다. 알려지지는 않았지만 아타리 재규어용 게임을 개발했던 시기도 있었으며, 다양한 의료용 소프트웨어 프로젝트에 참여했다. 또한, 열성적인 만화가이기도 해서 유명한 리스프 에일리언 마스코트와 삽화를 이용한 다양한 자습서를 만들었다. 현재는 워싱턴 DC에 살면서 심장학 소프트웨어를 개발하고 있다.
조태훈 역자

조태훈

카이스트 웹사이언스 공학과에서 석사 과정을 밟으며 새로운 웹의 미래를 그리고 있다. 미국 동부에서 웹 서비스 프로그래머로 일했고, 육군에서 소프트웨어 개발병으로 복무하며 다수의 인트라넷을 개발했다. 웹과 문화 콘텐츠 산업 전반에 관심이 많고, 현재는 소셜 네트워크 분석 기법에 대해 연구 중이다.

머리말   
   어떤 점이 리스프를 그토록 멋지고 특이하게 만드는가?   
   리스프가 그렇게 좋다면 왜 더 많은 사람이 쓰지 않을까?   
   리스프는 어디에서 왔는가? 
   리스프의 힘은 어디에서 왔는가?   
SECTION I 리스프는 힘이다
1 리스프 시작하기     
  리스프 변종   
    두 리스프 이야기   
    앞날이 기대되는 리스프   
    스크립트 언어로 쓰이는 리스프   
    안시 커먼 리스프   
  CLISP로 시작하기   
    CLISP 설치하기   
    CLISP 실행하기   
  이 장에서 배운 것   
2 첫 리스프 프로그램 만들기     
  내 숫자를 맞춰봐! 게임   
  리스프에서 전역변수 선언하기   
    big과 small 변수 선언하기   
    전역변수를 정의하는 다른 함수   
  리스프의 기본 수칙  
  리스프에서 전역함수 정의하기   
    guess-my-number 함수 정의하기   
    smaller와 bigger 함수 정의하기   
    start-over 함수 정의하기   
  리스프에서 지역변수 정의하기   
  리스프에서 지역함수 정의하기   
  이 장에서 배운 것   
3 리스프 문법으로의 여행     
  문법과 의미   
  리스프 문법의 기초  
    심볼   
    숫자   
    문자열   
  리스프는 코드와 데이터를 어떻게 구분하는가   
    코드 모드   
    데이터 모드   
  리스트   
    콘셀   
    리스트 함수   
    중첩 리스트   
  이 장에서 배운 것   
SECTION II 리스프는 대칭이다
4 조건에 따라 결정하기     
  nil과 ()의 대칭   
    비었다는 것은 곧 False와 같다   
    ()의 네 가지 가면   
  조건문: if와 그 밖에 것   
    한 걸음 나아가 if 이해하기   
    if를 넘어서: 대안이 되는 when과 unless   
    그 자체가 전부인 명령어: cond   
    case로 분기하기   
  조건 절에서 쓰는 요령   
    숨은 조건 and와 or 사용하기   
    참과 함께 다른 값도 반환하는 함수 사용하기   
  비교하기: eq와 equal, 그리고 다른 것   
  이 장에서 배운 것   
5 텍스트 게임 엔진 만들기     
  마법사의 어드벤처 게임   
    게임 세계   
    기본 요구사항   
  관련 풍경 묘사하기  
  장소 묘사하기   
  경로 묘사하기   
    유사인용 동작 원리   
    한 번에 여러 경로 정의하기   
  특정 장소의 물건 설명하기   
    눈에 보이는 물건 나열하기   
    눈에 보이는 물건 묘사하기   
  전부 출력하기   
  게임 세계 둘러보기  
  물건 집기   
  보관함 확인하기   
  이 장에서 배운 것   
6 리스프에서의 상호 작용: 입력과 출력     
  글자의 출력과 입력  
    화면에 출력하기   
    사용자에게 Hello라고 말하기   
    print와 read부터 시작하기   
    사람의 방식으로 읽고 출력하기   
  리스프에서 코드와 데이터의 대칭   
  게임 엔진에 직접 만든 인터페이스 추가하기   
    직접 만드는 REPL   
    read 함수 직접 작성하기   
    game-eval 함수 작성하기   
    game-print 함수 작성하기   
  화려해진 새 게임 인터페이스 시험하기   
  read와 eval의 위험성   
  이 장에서 배운 것   
65 람다: 한 장을 차지할 만큼 중요한 함수     
  람다가 하는 일   
  람다가 왜 그토록 중요한가   
  이 장에서 배운 것   
7 기본 리스트 뛰어넘기     
  이상한 리스트   
    점 리스트   
    짝   
    원형 리스트   
    연관 리스트   
  복잡한 데이터 처리하기   
    트리형 데이터 표현하기   
    그래프 표현하기   
  그래프 생성하기   
    DOT 정보 생성하기   
    노드 식별자 변환하기   
    그래픽 노드에 이름표 추가하기   
    노드의 DOT 정보 생성하기   
    DOT 파일을 그림으로 바꾸기   
    그래프를 그림으로 만들기   
  무향 그래프 생성하기   
  이 장에서 배운 것   
8 예전의 웜퍼스는 잊어라     
  대도 웜퍼스 게임   
  "배배 꼬인 도시"의 에지 정의하기   
    무작위로 에지 생성하기   
    loop 명령어로 반복문 만들기   
    섬으로 고립되는 것 방지하기   
    "배배 꼬인 도시"의 마지막 에지 만들기   
  "배배 꼬인 도시"의 노드 생성하기   
  대도둑 웜퍼스 게임 초기화하기   
  도시 지도 그리기   
    부분적인 데이터로 도시 그리기   
    도시 걸어다니기   
  웜퍼스를 사냥하자!   
  이 장에서 배운 것   
9 고급 데이터 타입과 제너릭 프로그래밍     
  배열   
    배열 사용하기   
    제너릭 할당문 사용하기   
    배열 대 리스트   
  해시 테이블   
    해시 테이블 사용하기   
    여러 개의 값 반환하기   
    해시 테이블의 성능   
    해시 테이블로 더 빨라진 "대도둑 웜퍼스" 만들기   
  커먼 리스프의 스트럭처   
    스트럭처로 작업하기   
    스트럭처를 언제 써야 하는가   
  포괄적으로 데이터 다루기  
    차례로 나열된 값 다루기   
    타입 단정 함수로 제너릭 함수 직접 작성하기  
  오크 대전 게임   
    플레이어 전역변수와 몬스터 전역변수   
    주요 게임 함수   
    플레이어 관리 함수   
    플레이어 공격에 대한 헬퍼 함수   
    몬스터 관리 함수   
    몬스터   
    대전을 벌이자!   
  이 장에서 배운 것   
SECTION III 리스프는 해킹이다
LOOP와 FORMAT: 리스프의 취약한 부분     
10 LOOP 명령어로 반복문 짜기     
  LOOP 매크로   
    LOOP에 관련된 몇 가지 기법   
    LOOP에서 궁금했던 모든 것  
  LOOP를 써서 진화하자!   
    게임 세계 속 식물의 성장  
    동물 생성하기   
    게임 세계의 하루   
    게임 세계 그리기   
    사용자 인터페이스 만들기   
    진화의 과정을 지켜보자!   
    진화에 대해 설명하기   
  이 장에서 배운 것   
11 FORMAT 함수로 글자 출력하기     
  FORMAT 함수 해부하기   
    목적지에 대한 매개변수   
    제어 문자열 매개변수   
    값에 대한 매개변수   
  리스프 값을 출력하기 위한 제어 부분   
  숫자의 출력 형식에 대한 제어 부분   
    정수형 숫자를 출력하는 제어 부분   
    실수형 숫자를 출력하는 제어 부분   
  여러 줄의 결과값 출력하기   
  출력 결과의 자리 맞추기   
  제어 부분을 사용하여 리스트 순회하기   
  데이터 테이블을 만드는 최고의 포맷 기법   
  로봇을 공격하라!   
  이 장에서 배운 것   
12 스트림으로 작업하기     
  스트림의 종류   
    스트림의 종류   
    스트림의 방향   
  파일로 작업하기   
  소켓으로 작업하기   
    소켓 주소   
    소켓 연결   
    소켓을 통해 메시지 보내기   
    자원 반환하기   
  문자열 스트림: 괴짜 타입   
    스트림을 함수로 보내기   
    긴 문자열로 작업하기   
    읽기와 디버깅   
  이 장에서 배운 것   
13 웹 서버를 만들어 보자!     
  커먼 리스프에서 오류 처리하기   
    예외 상황 만들기   
    사용자 예외 상황 만들기   
    특정 상황 가로채기   
    예기치 못한 상황에서 자원 보호하기   
  맨손으로 웹 서버 만들기   
    웹 서버 동작 원리   
    요청의 매개변수   
    요청의 헤더 해석하기   
    문자열 스트림으로 get-header 함수 테스트하기   
    요청의 본문 해석하기   
    마무리 단계: serve 함수   
  동적 웹 사이트 만들기   
    요청 처리기 테스트하기   
    웹 사이트 열기   
  이 장에서 배운 것   
함수형 프로그래밍은 아름다워     
SECTION IV 리스프는 과학이다
14 함수형 프로그래밍으로 리스프의 수준 높이기     
  함수형 프로그래밍은 무엇인가?   
  함수형 스타일로 작성된 코드 파헤치기   
  고차 프로그래밍   
    절차형 코드와의 코드 구성   
    함수형 스타일 사용하기   
    고차 프로그래밍으로 구제하기  
  함수형 프로그래밍은 왜 안 되는가   
  함수형 프로그래밍이 왜 멋진가   
    함수형 프로그래밍은 버그를 줄인다   
    함수형 프로그램은 더 작다   
    함수형 코드는 더 우아하다   
  이 장에서 배운 것   
15 함수형 스타일로 작성된 "운명의 주사위" 게임     
  운명의 주사위 게임 규칙   
  운명의 주사위 게임 예   
  운명의 주사위 게임 버전 1 구현하기   
    전역변수 선언하기   
    게임판 구현하기   
    운명의 주사위 게임 규칙 분리하기   
    게임 트리 생성하기   
    차례 넘기기   
    공격 이동 계산하기   
    인접 영역 찾기   
    공격   
    병력 충원하기   
    새로운 game-tree 함수 사용하기   
    다른 사람과 맞붙기   
  지능을 갖춘 적 만들기   
    미니맥스 알고리즘   
    미니맥스 알고리즘을 실제 코드로 구현하기   
    인공지능 플레이어와 함께 하는 게임 반복문 만들기   
    사람 대 컴퓨터 게임하기   
  운명의 주사위 게임 속도 개선하기   
    클로저   
    메모이제이션   
    꼬리 호출 최적화   
    3×3 크기의 판에서 하는 게임의 예   
  이 장에서 배운 것   
16 리스프 매크로의 마법     
  간단한 리스프 매크로   
    매크로 확장   
    매크로는 어떻게 변환되는가   
    단순한 매크로 사용하기   
  복잡한 매크로   
    리스트를 나누는 매크로   
    매크로 내 반복 실행 막기  
    변수 충돌 방지하기   
    재귀 매크로   
  매크로: 위험성과 그 대안   
  이 장에서 배운 것   
17 특정 도메인 언어     
  도메인이란 무엇인가?   
  SVG 파일 작성하기   
    tag 매크로로 XML/HTML 생성하기   
    SVG용 매크로와 함수 만들기   
    더 복잡한 SVG 예제 만들기   
  마법사의 모험 게임을 위한 사용자 명령어 만들기   
    새 게임 명령어 직접 만들기   
    완성된 마법사의 모험 게임하기   
  이 장에서 배운 것   
18 지연 프로그래밍     
  리스프에 지연 평가 추가하기   
    lazy와 force 명령 만들기   
    지연 리스트 라이브러리 만들기   
    일반 리스트와 지연 리스트 사이의 변환   
    지연 리스트에 대해 매핑하고 검색하기   
  운명의 주사위 게임 버전 2 구현하기   
  더 큰 게임판에서 인공지능 플레이어 작동시키기   
    게임 트리 다듬기   
    휴리스틱 적용하기   
    큰 차이로 이기는가 vs 작은 차이로 이기는가   
    알파-베타 프루닝   
  이 장에서 배운 것   
19 그래픽을 입한 웹 기반의 운명적 주사위 게임     
  SVG 포맷으로 게임판 그리기   
    주사위 그리기   
    육각판 그리기   
    게임판 그리기   
  웹 서버 인터페이스 만들기   
    요청 처리기 작성하기   
    게임 웹 서버의 제약 사항  
    새로운 게임 초기화하기   
    승자 발표   
    사람 플레이어 처리하기   
    컴퓨터 플레이어 처리하기   
    HTML 내에서 SVG 게임판 그리기   
  운명의 주사위 버전 3 플레이하기   
  이 장에서 배운 것   
20 운명의 주사위 게임을 더 재미있게     
  플레이어 수 늘리기  
  주사위 굴리기   
    기회 노드 만들기   
    실제로 주사위 굴리기   
    엔진에서 주사위 굴리기 코드 호출하기   
    인공지능 개선하기   
  운명의 주사위 충원 규칙 개선하기   
  결론   
에필로그 
찾아보기

책의 두께는 540 페이지 정도로 조금 두꺼운 편이다.

책은 전체적으로 소규모 프로젝트로 이루어진거 같다.
각 장마다 하나의 프로젝트를 구현하면서 그때 그때 나오는 함수들에 대해서
간략히 설명하는 구조라
처음 리스프를 접하는 독자들이 보기에는 어려울 수 있다.

여러 문법에 대해서 좀더 자세한 설명이 되어 있다면 좋을텐데
그런 점이 조금 아쉬웠다.
그래도 반복적으로 다루기에
리스프의 표현자체가 간결한 부분이 있어
표현에 익숙해진다면 그래도 조금은 수월하게 읽을 수 있을 듯 하다.

개인적으로는 책에 사용하는 함수들에 대해
설명하는 장이 앞단에 있었다면 하는 아쉬움이 있다.

구현하면서 설명하는 것도 좋으나
아무래도 정리되어 있는 파트가 있는게
좀더 이해하기에 좋을 듯 싶다.

구현해나가면서 설명하는 방식이라
조금은 개념적인 부분의 설명에 대해서는 조금 아쉬운 점도 있다.

책은 전반적으로 리스프에 대해서 예찬이 상당히 강한 책이다.
그러한 강한 자신감에 오히려 리스프에 대해서 좀더 봐야 겠다는 생각을 들게 한다.

중간중간 삽화들이 있어 삽화를 읽어보는 재미도 있는 듯 하다.

전반적으로 이런 것을 구현해보자 하고
그에 따른 각각의 구조를 구현해나가는 식이라
그만큼 다양한 예제를 접할 수 있다는건 좋은거 같다.
특히나 간단한 게임들을 많이 다루고 있어
게임 부분에 관심이 있다면 더 좋을 것이다.

다만 리스프는 기존 언어의 문법체계와 많이 틀린 부분이 있어
아예 그러한 쳬게를 접해보지 못한 독자라면
처음 형식에 익숙해지지 않으면 어려울 수 있다.

기본적인 리스프의 문법을 숙지하고 본다면 더 좋을 거 같다.

Lisp이라는 언어를 아시나요??

프로그래밍 분야에서 오랜 경험을 거쳤지만, Lisp이라는 언어는 소위 SICP 로 통용되는 "컴퓨터 프로그램의 구조와 해석"책의 예제가 Scheme이라는 Lisp 언어를 사용한다는 거, 많은 해커들이 사용하는 정도로만 알고 있었습니다.
그러던 제가 요즘 자바스크립트의 매력에 푹 빠져있는데, 자바스크립트의 Functional Programming의 몇몇 개념들이 Scheme이라는 Lisp 언어에서 가져왔다는 사실을 알면서 부터는 Lisp에 좀더 많은 관심을 가지게 됐고, 그래서 이 책을 읽게 됐습니다.
이책은 국내에서 소개된 거의 유일한 Lisp 관련 책으로 Lisp 언어중 Common Lisp(CLISP) 이라는 언어를 설명하고 있습니다.

Head First 시리즈를 기대하셨다면..

이 책은 Lisp에 대한 입문서로 기대하고 구입하셨다면 좀 아쉬울 수 있습니다. 책 내용 자체가 어렵다기 보다는 Lisp 언어 자체가 생소하고 어려운 개념을 포함하고 있지만, 이에 대한 설명이 좀 부족한 것 같습니다. 때문에 저처럼 Lisp 언어에 대한 지식이 전무한 상태에서는 간단한 예제를 이해하는데도 꽤 많은 시간을 필요로 했습니다.
가령, 소스코드에서 갑자기 설명이 안된 Lisp 함수가 나온다던지 (이 부분은 인터넷에 CLISP 레퍼런스를 보면서 해결은 했습니다.) 번역이 문제인건지 Lisp 문법에 대한 설명이 제대로 이해가 안되는 부분이 좀 있었습니다.(역자분의 주석이 있었으면 좋지 않았을까 하는 대목이더라구요)
또한 이 책의 코딩 환경은 REPL (커맨드 방식의 스크립트 코드를 실행할 수 있는 쉘이라고 보시면 됩니다) 만을 설명하고 있어서, 좀더 편한 개발 환경을 구축하기가 쉽지가 않았습니다. 아시다시피 개발 환경만 제대로 구축하더라도 소스 코드의 동작 방식을 이해하기가 꽤 편하니까요.

그럼에도 불구하고.

이 책은 Lisp 언어를 배우기 위해서는 꽤 괜찮은 책입니다. 독자들이 Lisp 개발환경과 기본 문법을 어느 정도 먼저 익히고 본다는 가정하에서 말이죠 ^^
사실 국내의 Lisp 서적이 거의 전무하기 때문에 딱히 선택의 여지도 없습니다. 그렇다고 하더라도 이 책은 꽤 괜찮은 퀄리티를 가지고 있습니다.
간단한 게임, 웹서버 등 예제의 수준도 나쁘진 않습니다.
올해 Lisp을 공부하시겠다고 계획하신 분들은 이 책으로 한번 도전해보세요.~~

리스프 프로그래밍? 생소한데, 리스프가 뭐지? 컴퓨터 공학을 전공하면서 한 번도 들어본 적이 없는 이름에 이끌려 무작정 보기로 마음먹은 책, "만들면서 배우는 리스프 프로그래밍", 결론부터 말하자면 초보자가 단순히 책 페이지에 따라가면서 익힐 수 있을지, 정말 리스프가 매력적인 언어인지 의문이 많이 남는 책 이였습니다.
이 책의 가장 큰 특징은 흥미롭게 항해를 할 수 있게끔 만든 각 장의 차례 제목들과 중간 중간에 삽입되어 있는 만화, 다양한 예제들 그리고 리스프를 매력적으로 소개한 머리말 이였습니다. 처음 머리말이나 차례를 통해 보면 리스프가 굉장히 재미있는 언어로 다가갈 수 있게끔 독자들을 유도 합니다. 실제적으로도 코딩을 하고 결과물을 보면 매력적인 언어라고 생각 되어 집니다.
하지만 직접 따라 코딩하는 내내 "어 갑자기 이건 또 뭐야?", "이건 뭐더라" 라는 말을 꽤 많이 내뱉었습니다. 책 표지에 "만들면서 배우는"이라는 타이틀이 있지만 "함수형 프로그래밍" 이라는 리스프의 소개와는 다르게 함수 설명이 미흡하였다고 생각하기 때문 이였습니다. 기존에 C/C++을 공부할 때 이해하기 쉽게 쓰여 진 책들만 봐와 거기에 익숙해져버린 제 신체에 대한 불만일수도 있지만, 처음 코드를 실행시키고 설명을 봐도 이해하기 힘든 부분이 많았고 책갈피 없는 구성으로 함수를 되짚어 찾아갈 때 어디를 다시 봐야하는지 기억해내기 힘들었습니다. 중간 중간 삽입된 만화는 이해를 도우기보다는 더 난해하게 만들었고 나중에는 만화나 삽화를 스킵 하는 게 더 편했습니다. 가장 아쉬운 건 다른 언어에 대한 익숙함 때문인지 이 책에서는 기존에 제가 사용했던 언어보다 리스프가 더 괜찮은 언어인지에 대한 답을 이 책을 통해서는 얻을 수 없었다는 점입니다.
익숙함을 깨지 못해 아쉬움이 많이 남는 책 이였지만 리스프에 대한 기본적인 지식은 얻을 수 있었습니다.

최근 Multi-core/Multi-processing 환경으로 하드웨어가 발달하면서 Parallel/Concurrent programming 에 적합한 Functional Language에 관심이 높아지고 있다.
Lisp는 가장 오래된 Functional Language라고 할 수 있는데 1980년대에 인공지능분야에서 많이 사용되었으며, 관련역사에 대한것은 책의 머리말에 재미있게 설명되어 있다.
본 도서의 특징은 지루할 수 있는 내용을 카툰으로 중간중간 부담없이 꾸준한 흥미를 가질 수 있도록 구성하고 실제 만들고자 하는 대상을 lisp로 구현해 보면서 lisp를 이해해 나갈 수 있다는 것이다.

이 책의 장점은 무엇보다 lisp의 세세한 내용들을 다룸에도 불구하고 가벼운 전개와 카툰을 보면서 계속 흥미를 유지하면서 재미있게 읽어 나갈 수 있다는 점이다. (이해가 쉽다!) 국내에 정통 lisp 번역서는 이 책이 최초인것으로 알고 있는데(?), lisp에 관심은 있었지만 괜히 어려울것 같고 부담스러웠다면 입문서로 가장 좋은책이 아닐까 생각한다. 개인적으로 Head First 시리즈는 별로 않좋아 하는데, land of lisp는 전혀 다른형태의 입문서이면서 lisp초보자가 알아야할 내용을 쉽고 재미있게 배울 수 있게 해준다.

다만, 단점으로 개발환경설정 부분이 미흡한 것인데 책에 나와 있는 설명이 너무 간단해서 코드를 계속 유지보수하면서 따라 해보기 쉽지 않다.

개인적으로 lisp책이 나와서 "만들면서 배우는 리스프 프로그래밍"을 필두로 lisp의 "On Lisp"나 clojure, scala, Erlang 같은 Functional Language에 대한 번역서도 많이 출판 되었으면 하는 바램이다.!

만들면서 배우는 리스프 프로그래밍

LISP 가 뭐지? 예전에 들어 본것 같은데. lisp.. 리스프... 리š

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
만들면서 배우는 리스프 프로그래밍: Land of LISP
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
만들면서 배우는 리스프 프로그래밍: Land of LISP
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
만들면서 배우는 리스프 프로그래밍: Land of LISP
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실