이 책에 대하여

Pinax 는 C 프로그램 안에 끼워 쓰는 작은 스크립트 언어다. 메모리 한 덩이를 받아 그 안에서만 돌고, 쓰레기 수거기도 힙도 없다. 낱말 사이는 스택으로 값을 넘기고, 한 낱말 안에서는 이름을 쓴다. 타입과 스택의 깊이는 프로그램을 적재할 때 모두 검사된다.

이 책은 Pinax 로 프로그램을 쓰는 사람을 위한 것이다. 처음부터 끝까지 차례로 읽게 썼다. 장마다 처음에 그 장이 기대는 것과 답하는 물음을 적었고, 끝에 정리를 두었다. 정리의 규칙마다 그 규칙을 정한 표준의 조항을 붙였다. 이 책과 표준이 어긋나면 표준이 맞다.

책의 모든 프로그램은 실제로 돌린 것이고, 실린 출력은 그때 받은 그대로다. 거절되는 프로그램도 많이 실었다. 어떤 프로그램이 왜 거절되는지 아는 것이 그 언어의 규칙을 아는 가장 빠른 길이기 때문이다. 거절된 프로그램의 출력은 처리기가 낸 메시지 그대로다.

연습 문제는 없다. 본문 사이의 문답은 읽다가 생길 만한 물음에 그 자리에서 답한다. 흔한 오해 상자는 이 언어를 처음 쓰는 사람이 실제로 걸려 넘어지는 자리다.

스택 머신은 낯선 사람이 많으므로, 이 책은 코드 한 줄을 표로 따라가는 일이 잦다. 표의 한 줄은 토큰 하나, 그 뒤의 스택(맨 위는 오른쪽), 그리고 일어난 일이다. 2장이 스택을 처음부터 설명한다. 값과 낱말의 차례가 거꾸로 느껴지면 그 장으로 돌아가면 된다. 예제의 주석(rem 뒤)은 각 줄이 하는 일을 적는다. 16장은 가장 자주 만나는 메시지를 뜻과 고치는 법과 함께 모았다. 책 끝의 색인은 용어가 정의된 자리와 낱말이 처음 소개된 자리를 가리킨다.

예제는 저장소의 docs/manual/examples/ 에 있고, pnx 파일이름 으로 돌린다.