하스켈(Haskell) 학습 프로젝트로 시작된 문서 변환기 판독(Pandoc)이 지난 20년간 괄목할 만한 성장을 이루며 51개 입력 형식과 76개 출력 형식을 지원하는 범용 도구로 자리매김했습니다. 2006년 8월 3일 판독 0.1 버전이 약 3,000줄의 하스켈 코드로 공개된 이래, 200회 이상의 릴리스를 거쳐 전 세계 수백만 대의 컴퓨터에 설치되며 하스켈로 작성된 가장 인기 있는 프로그램 중 하나가 되었습니다.
판독의 핵심은 정규식 기반의 직접 변환 대신 추상 구문 트리(AST)를 생성하고, 리더(reader)와 라이터(writer)를 분리하는 아키텍처에 있습니다. 이는 N개의 리더와 M개의 라이터만으로 N×M개의 변환을 지원하는 높은 확장성을 제공하며, 초기 마크다운(Markdown) 파서 개발 시 정규식 구현에서 발생하던 여러 변칙을 피하고 안정성을 확보하는 데 기여했습니다. 템플릿, 마크다운 확장, YAML 메타데이터, JSON/Lua 필터, 그리고 CommonMark 및 인용/참고문헌 처리 기능까지 지원하며, docx, EPUB, 주피터(Jupyter), Typst, WASM 등 적용 범위를 꾸준히 넓혀왔습니다. 하스켈의 강력한 타입 시스템과 순수 함수는 대규모 변경과 부작용 통제를 도왔으며, PandocMonad 추상화로 실제 I/O와 샌드박스 실행을 모두 지원합니다.
판독의 성공은 단순히 기능적 우수성을 넘어, 개방형 생태계와 커뮤니티 기여의 중요성을 보여줍니다. 초기 데비안(Debian) 패키징 제안으로 가시성을 확보하고, 하카지(Hackage) 저장소 등록을 통해 외부 패키지 활용이 가능해졌습니다. 특히 깃허브(GitHub)로 프로젝트를 이전하며 수많은 기여자들이 미디어위키(MediaWiki), 오픈도큐먼트(OpenDocument), 파워포인트(PowerPoint) 등 다양한 입출력 형식과 기능 추가에 참여했습니다. LLM(대규모 언어모델)도 문서 형식을 변환할 수 있지만, 현재 판독은 낮은 에너지 소비, 결정적 출력, 높은 신뢰성에서 우위를 점하고 있으며, 이는 학술 및 전문 문서 작업 환경에서 여전히 강력한 도구로 활용될 수 있음을 시사합니다.