필자가 찾은 파서 결합 자의 자료는 구성을 통해 복잡한 파서를 구성하는 것을 다루지 만, 라이브러리의 작성된 파서를 조정하여 파서를 정의하는 좋은 방법이 있는지 알고 싶습니다. 원래 라이브러리의 논리를 완전히 복제합니다.파서 라이브러리를 깊이 확장하기위한 접근법
예를 들어, 여기 Real world Haskell
import Text.ParserCombinators.Parsec
csvFile = endBy line eol
line = sepBy cell (char ',')
cell = many (noneOf ",\n")
eol = char '\n'
한 라이브러리에 정의 csvFile
가정 정의 간략화 CSV 파서 다른 라이브러리가 cell
파서 맞춤 버전을 사용하여 자신의 CSV 파서를 생성 할 필요없이 line
및 csvFile
파서도 다시 작성 하시겠습니까? 소스 라이브러리를 다시 작성하여이를 가능하게 할 수 있습니까? 이것은 CSV 파서에게는 충분히 간단하지만 광범위하게 적용 할 수있는 솔루션에 관심이 있습니다.