- 책 정보
- 저자: 토르슈텐 발
- 출판사: 인사이트
- 구매 링크: http://ebook.insightbook.co.kr/book/101
이 책은 저자가 설계한 Monkey 라는 프로그래밍 언어의 인터프리터를 코드의 어휘 분석(Lexing)부터 평가(Evaluate)까지 하나하나 구현해 나가는 책입니다. 사실 인터프리터 라는게 일부 개발자들만 관심을 가질 특수한 소재고, 이 소재를 깊게 다루고 있지 않아 애매한 책으로 보일 수 있으나, 이 책의 가장 빛나는 부분은 테스트 주도 개발에 입각해서 쓰인 책이라는 점 입니다.
이 책에서 진행되는 모든 구현 및 확장은 요구사항 -> 테스트 코드 작성 -> 구현 을 통해 진행됩니다. 인터프리터라는 주제를 떼도 TDD 실전 입문서로 사용해도 될 듯한 느낌으로 읽힙니다.
그렇게 TDD 입문 느낌으로 책을 읽어나가다 보면 코드의 확장성에도 감탄하게 되는데, 의도적인 건진 모르겠지만 작가가 제시한 Monkey 언어에 명백히 비어있는 기능1이 점점 눈에 밟히게 되고 코드의 확장성을 등에 업고 시키지도 않은 기능 구현을 하고있는 자신을 발견하게 됩니다.
뭐지? 마니악한 소재를 전파하려는 작가의 함정인가?
전 일단 제 몽키에 유니코드 지원부터 추가하고 오겠습니다.
-
몽키에는 <, > 비교 연산자가 있으나 <=, >= 연산자가 없음 ↩︎