얼마 전에 an article on FingerTrees (an accompanying Stack Overflow Question 참조)을 가로 질러 아이디어를 제기했습니다. 나는 마침내 그 (것)들을 이용하는 이유를 찾아 냈다.안정적인 구현을 위해 FingerTree를 충분히 사용하지 않는 이유는 무엇입니까?
제 문제는 Data.FingerTree package에 가장자리가 약간 부식 된 것 같습니다. 또한 데이터 구조 re-implements을 사용하는 컨테이너 패키지의 Data.Sequence은 (더 나은) 버전 일 수는 있지만 내보낼 수는 없습니다.
이 구조가 이론적으로 유용하기 때문에 실제 사용이나 관심을 많이 얻지는 못하는 것 같습니다. FingerTree가 실제적인 문제로 유용하지 않다는 사실을 사람들에게 알았습니까?
자세한 설명 :
내가 좋은 연결의 속성을 가진 데이터 구조를 유지 텍스트를 작성에 관심이 있어요. 분류 된 단편에서 HTML 문서를 작성하는 방법을 생각해보십시오. 대부분 미리 빌드 된 솔루션은 바이트 테스트를 사용하지만 실제로 유니 코드 텍스트를 제대로 처리하는 것이 필요합니다. 내 계획은 DataText 조각을 FingerTree에 쌓는 것입니다.
또한 Data.Vector에서 (오프셋, 길이) 조작을 사용하여 복사하지 않고 슬라이스를 가져 오는 트릭을 빌리고 싶습니다. Data.Text.Text는 데이터 유형에 내장되어 있지만 효율적인 uncons 및 unsnoc 처리에만 사용됩니다. FingerTree에서이 정보는 매우 쉽게 v
또는 주석이 될 수 있습니다.
왜 Data.Text.Lazy.Text를 사용하지 않습니까? – dave4420
대부분의 사람들은 손가락 트리 구조 자체와 인터페이스 할 필요가 없습니다. 그들은'Data.Sequence'에서 얻는 것만 있으면됩니다. 실제로 데이터 구조를 직접 사용해야하는 경우가 거의 없습니다. –