CanonCode의 Rust 엔진 — .lex 파서부터 조항 충돌 감지까지

CanonCode를 소개하는 이전 글에서 “2,800줄의 코드를 160줄의 명세로 압축했다"는 실험을 다뤘다. 이번에는 그 명세를 읽고 검증하는 엔진의 내부를 파헤친다. 왜 Rust인가, 파싱은 어떻게 하는가, 조항 간 충돌은 어떻게 감지하는가. 설계 결정마다 “다른 선택지도 있었는데 왜 이걸 골랐는지"를 함께 기록한다. 왜 Rust인가 CanonCode의 엔진은 3가지 역할을 한다: .lex 파일 파싱 및 구조 검증 조항 간 의존성 그래프 빌드 헌법-법률 계층 간 충돌 감지 처음에는 TypeScript로 작성했다. Node.js 생태계에 익숙하고, JSON 파싱이 네이티브이니까. 한 달 정도 쓰다가 Rust로 재작성했다. 이유: ...

2026-03-19 · 7분 소요 · Seunghan
개인정보처리방침 이용약관 면책조항 문의