나는 목록을 출력하는 장기 실행 계산이 있습니다. 이 목록에서 계산 된 값을 출력하고 싶습니다. 이것을하기위한 깔끔한 방법은 무엇입니까?목록에서 계산 된 값을 어떻게 출력해야합니까?
현재 각 값을 STDOUT으로 인쇄하려면 mapM_ print
을 사용합니다. 이것은 명령 행에 값을 인쇄하는 단순한 경우에는 충분하지만 hacky와 함께 작업하기가 힘듭니다.
또한 어떤 시점에서 커맨드 라인 출력을 대화 형 시각화로 바꾸고 싶습니다. 내 목록을 FRP의 이벤트 스트림과 같은 것으로 바꾸려면 어떻게해야합니까? 이것을 기존 GUI 프레임 워크에 이벤트 소스로 연결할 수 있다는 점은 훌륭 할 것입니다.
목록 이외의 것을 사용하는 기능을 다시 작성하는 것은 옵션이지만, 목록을있는 그대로 사용하는 것이 이상적입니다.
하스켈의 목록은 게으르고'mapM_'도 잘 동작하므로, 기본 해결책은 상당히 좋습니다. 'hFlush stdout'을 사용하여 출력이 실제로 플러시되는지 확인하십시오 (예 :'mapM_ (hFlush stdout << print')). –