리더 확장
리더 확장 (Reader Extension)
Racket의 리더(reader)는 세 가지 방법으로 확장할 수 있어요. 각 방법이 어떻게 동작하고, 확장 프로시저들이 어떤 인자를 받는지가 이번 주제의 핵심이에요.
출처: Racket Reference
본문
Racket의 리더는 세 가지 방식으로 확장할 수 있어요. 리드테이블(readtable) 안의 리더 매크로 프로시저를 쓰는 방법(Readtables 참고), #reader 폼을 쓰는 방법(Reading via an Extension 참고), 그리고 "특별한(special)" 결과 프로시저를 돌려주는 커스텀 포트 바이트 리더를 쓰는 방법(Custom Ports 참고)이 바로 그것이에요. 이 세 종류의 리더 확장 프로시저는 모두 비슷한 인자를 받고, 그 결과는 read와 read-syntax가 (더 정확히는 기본 read 핸들러가; port-read-handler 참고) 같은 방식으로 처리해요.
더 알아보기
- 13.7.1 리드테이블 (Readtables)
- 13.7.2 리더 확장 프로시저 (Reader-Extension Procedures)
- 13.7.3 특별 주석 (Special Comments)