2014-02-07 5 views
5

하스켈 파서/연결자 Parsec은 Data.ByteStringData.Text의 입력 스트림을 지원합니다. 향후 릴리스에서 이러한 유형에 대한 지원을 추가 할 계획이 있습니까? 연결자 (많은, sepby, string ...)는리스트 주위에 디자인 된 것처럼 보입니다. 그리고 ByteStrings와 Text를 처음 사용하는 이유는리스트의 사용을 피하는 것입니다. 나는 대부분이 팩으로 변환 될 것이므로 그 목록은 가비지 컬렉터 될 것이라는 것을 이해한다. 그러나 이것은 Text/ByteString의 절반 정도의 지원이 아닌가? Data.Parsec.Text.CombinatorData.Parsec.ByteString.Combinator이 없어야하나요?parsec 연결자 및 텍스트/ByteString

+0

나는 attoparsec에 대해 알고 있지만, 내가 파싱 할만큼 충분한 기능을 갖추고 있지는 않다. –

+1

염두에두고있는 특수 기능에 대한 유형 서명을 제공 할 수 있습니까? –

+1

좋아요. 많은 :: Stream s m t => ParsecT s Char -> ParsecT s m Data.Text 길이가 0 인 경우 Text.empty가 반환됩니다. 나는 팩에 대한 호출로 하나를 쓸 수 있다는 것을 알고 있지만, 이것은리스트를 피하는 목적을 무효화 할 것이다. –

답변

2

직접 귀하의 질문에 대답하려면 :

향후 릴리스에서 이러한 유형에 대한 더 많은 지원을 추가 할 계획이 있습니까?

아마도, 아니요. darcs changes에서 추측하기 쉽기 때문에이 패키지는 오랫동안 활발한 개발을 보지 못했습니다.

그렇다면 핵심 API가 공개되어 있으므로 원하는 것을 알면 어떻게 할 수 있는지 스스로 알 수 있습니다.