Grammar 파일은 버려라: DSL 파서를 평범한 TypeScript로 작성하라
대부분의 bounded-context DSL에 parser generator은 과하다. 파서 콤비네이터를 사용하면 애플리케이션과 동일한 언어로 작동하는 파서를 생성 코드 없이, 빌드 단계 없이 구축할 수 있다.
Yacc grammar 파일을 열어 보면서 언어를 만드는 데 왜 두 번째 언어를 배워야 하는지 의문을 품어본 적이 있다면, 당신만 그런 것이 아니다. parser generator은 강력하지만, bounded context 안에서 자연스럽게 등장하는 작은 DSL에는 거의 항상 과하다.…