현재 저는 하스켈과 Yampa를 배우고 있으며 반응 함수에 대해 질문하고 있습니다.Yampa의 반응 (센스) 기능의 시간차
reactimate :: IO a -- init
-> (Bool -> IO (DTime, Maybe a)) -- sense
-> (Bool -> b -> IO Bool) -- actuate
-> SF a b -- signal function
-> IO()
감지 유형 기능에서 볼 수 있듯이 감지 기능 출력의 일부는 현재 및 이전 기능 호출 간의 시간 차이입니다. 필자가 보았던 예제에서,이 시간 차이는 이전 호출의 값을 유지하기 위해 IORef를 사용하여 감각 내부에서 "수동으로"계산됩니다.
외부 상태를 사용하여 시간차를 추적해야하는 것은 이상한 것처럼 보입니다. 왜이 계산이 반응 함수에서 수행되지 않았습니까? IORef가이를 처리하는 좋은 방법입니까?