2013-02-05 2 views
10

스칼라는 하스켈 파이프의 정신으로 개발 된 라이브러리가 있습니까? 아니면 iteratee입니까?스칼라에는 iteratee/pipes 라이브러리가 잘 개발 되었습니까?

Play의 iteratee 라이브러리가 먼저 발견되었지만 제대로 작동하지 않을 수 있으며 많은 경우 부적절한 Play의 동시성 (concurrency) 프리미티브 Promise과 밀접하게 관련되어 있습니다.

Scalaz에는 (IterV과 같은) 일부 iteratee 지원이 있지만 추가 지원 기능, 미리 정의 된 iteratees/enumerators 등의 핵심 클래스 만있는 것 같습니다. 제대로 사용하는 것은 매우 어렵습니다.

그리고 파이프와 비슷한 것을 찾을 수 없습니다.. 트래비스 의견에까지 구축

+2

+1 (사람들이 투표를하는 이유는 확실하지 않음). Scalaz 7의 iteratee 패키지를 보셨습니까 (https://github.com/scalaz/scalaz/tree/scalaz-seven/iteratee/src/main/scala/scalaz/iteratee)? 하스켈 iteratee 라이브러리에 포함 된 배터리는 많지 않지만 Scalaz 6 버전보다 훨씬 유용합니다. –

+2

또한, Michael Snoyman의 [Conduit library] (https://github.com/snoyberg/conduit)의 [Scala port] (https://github.com/arjanblokzijl/scala-conduits)가 있습니다. 개인적으로 iteratees에서 오는 파이프보다 명확하게 발견 -하지만 아직 스칼라 포트를 시도하지 않은). –

+1

재생 iteratees를 기반으로 한 멋진 라이브러리가 있습니다. http://blog.greweb.fr/2013/01/playcli-play-iteratees-unix-pipe/ – OlegYch

답변

6

, 현재이 있습니다 :

+2

Runar의 머신은 매우 흥미롭게 보입니다. 불행히도, 그들은 개발 중에있어, 그들은 설명서가 부족한 것 같습니다 (AFAIK Scalaz 7 iteratee처럼). _conduit_의 포트는 유망한 것으로 보이지만 개발 중인지 또는 완료해야하는지 여부는 확실하지 않습니다. 그것의 발달은 [6 개월 전에] (https://github.com/arjanblokzijl/scala-conduits/graphs/commit-activity) 멈추었을 것으로 보이며 준비가 완료되거나 끝난 흔적이 없습니다. –

+2

Scalaz 7의 경우, 자세한 내용과 함께 상당한 금액의 예제 [here] (http://stackoverflow.com/a/13389530/334519)가 있습니다. 여기에 내 질문 [http://stackoverflow.com]/q/13422756/334519) ([this solution] (https://gist.github.com/travisbrown/4091180))은 Millikin의 Haskell 라이브러리처럼 조금 더 작동하도록 만드는 것입니다. –

관련 문제