보통 wxHaskell 프로그램이 보인다, 실행이 IO a -> IO()
을 입력있다, 또한 run
에서 일부 초기화 루틴이있다.StateT 및 WX의 GUI의 coexistance
data AppGlobals = AG { ... some data ... }
type MApp a = StateT AppGlobals IO a
을하지만,이 경우 GUI에서 유형 gui :: MApp AppGlobals
이 있어야합니다
나는 다음을 수행 트링하고있다. 그것의 타입으로 인해 일반적인 입출력 모나드 구문을 사용하는 것이 불가능하게되고, 나는 IO 작업을 수행 할 때마다 liftIO
을 사용할 것을 의미합니다.
거기에 wxHaskell에서 State Monad를 사용할 가능성이 있습니까? 각 이벤트 핸들러에 상태를 수동으로 전달하는 것은 그리 설득력이 없습니다.
WX 및 WXCore에는 두 개의 약간 다른 인터페이스가 있습니다. WXCore에서는'run'을 사용했고 WX에서는'start'를 사용했습니다. 그들은 같은 유형입니다. –