한빛미디어
번역서
절판
컴파일러 학습과 인터프리터 제작을 한 번에 끝낸다
C++ 언어를 이용해 BBI라는 인터프리터를 단계별로 완성한다. 인터프리터는 한 번에 번역하는 과정을 거치는 컴파일러와 달리, 사용자가 입력하는 코드를 실시간으로 한 줄씩 동시통역하는 언어처리 프로그램이다. 번역은 통역과 공통된 부분도 있지만, 다른 부분도 있다. 이 책에서는 문법 표현, 어휘 분석, 수식 분석과 같은 컴파일러 이론과 공통된 부분에서부터 인터프리터 처리에 특화된 부분까지 모두 설명하고 있다. 따라서 컴파일러 이론이 실제로 어떻게 구현되는지 학습하면서 자신만의 인터프리터를 만들어볼 수 있다.
BBI 인터프리터(Basic과 ruBy를 닮은 Interpreter)
이 책에서 모델로 개발할 BBI 인터프리터는 CCI-C 컴파일러의 앞 단계에 해당하는 처리계라는 의미도 있다. 전체를 파악할 수 있을 정도로 작지만 인터프리터의 기본 개념을 대부분 설명할 수 있을 정도로 충실한 언어 구현 모델이다. 초보자에게 필요한 것이 하나의 소스 프로그램에 충분히 채워져 있고 BASIC과 RUBY를 닮아 더욱 매력적인 BBI 인터프리터를 직접 만들어 볼 수 있다.
미니 전자 계산기 프로그램 만들기
재귀적 하향 구문 분석 루틴을 이용해 미니 전자 계산기 프로그램을 만든다. 이 프로그램은 인터프리터 기술에도 통용되는 것으로, 어휘 분석이나 식 분석의 기본이 되는 기법이 들어 있다. 머리에 쏙 들어올 정도로 간결한 소재이고 식 분석 방법을 이해할 수 있을 만큼 주요 기능을 포함하고 있다.