monads

    2

    1답변

    하스켈에서 모나드를 사용하여 글로벌 카운터를 만들려고하고 있습니다. 모나드 카운터를 사용할 때마다 증가하는 값을 얻고 싶지만, 매번 같은 값을 얻지 못하는 경우가 있습니다. module CounterMonad where data Counter a = C (Int -> (Int, a)) --reset the counter new :: Counter(

    10

    1답변

    저는 haskell에서 Ubigraph를 사용하려고 노력하고 있습니다.하지만 제 문제는 좀 더 일반적이라고 생각합니다. 내가 컴파일하려고 해요 : import Graphics.Ubigraph import Control.Monad import System.Posix.Unistd main = do h <- initHubigraph "http:/

    13

    1답변

    OCaml에서 상태 모나드를 구현하려고했습니다 (운동으로). 내 구현은 다음과 같습니다 : 나는 펑터를 사용하여 모듈의 상태 유형을 포장의 아이디어를 좋아하지 않기 때문에 module type MONAD_BUILDER = sig type 'a t val return : 'a -> 'a t val bind : 'a t -> ('a

    8

    2답변

    난수 생성기를 사용하고 이에 기반한 배열 및 기타 구조를 수정할 코드 (Metropolis-Hastings MCMC 샘플러)를 작성 중입니다. 내 초기 아이디어 내가 국가의 일환으로 PureMT 생성기를 유지, ST 배열과 메르 센 - 랜덤 pure64 패키지를 사용할 수 있도록 ST 모나드를 사용하는 것이 었습니다. 그러나 나는 (예를 들어, 배열 구조를

    6

    1답변

    좋아, 얘들 아, 아주 쉽게 문제를 처리 확인 (구글이 하나 나에게 도움이되지 않았다 이상한 것 같다) : import IO --.... yadda, yadda, yadda file <- openFile "/some/path" ReadMode 내가 핸들 있는지 확인하려면 어떻게 그 나는 openFile에서 유효한 핸들입니다, 즉 파일이 존

    3

    2답변

    여기에 오류 메시지를 덤프하는 것은 미안하지만 발견 할 수있는 모든 것을 시도했지만 아무 관계가없는 것으로 보입니다. 이 코드는 오류를 생성하고 있습니다 : 나는 정렬과 관련이 있습니다.하지만 'load'함수의 모든 호출을 올바르게 정렬했습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 감사 -A

    24

    3답변

    여기는 생각하기에 좋은 음식입니다. 모나드 코드를 작성할 때 모나드는 수행 된 작업에 대해 순서를 지정합니다. 예를 들어, 나는 IO 모나드에서 작성하는 경우 : do a <- doSomething b <- doSomethingElse return (a + b) 나는 doSomething이 doSomethingElse 전에 실행됩니다

    3

    1답변

    모나드 변압기 스택을 사용하는 방법을 알아낼 수 없습니다 type T s r a = StateT [s] (ListT (Reader r)) a 나는 현재 상태의 각을 산출 모나드 가치를 창출하고 싶습니다 states :: T a r a 하지만 오늘 바보 같아서 T a r [a] 값을 T a r a으로 변환하는 방법을 알 수 없습니다. states =

    9

    3답변

    혼란스러운 질문에 혼란스러운 제목이 있습니다! 나는 a) 모나드, b) IO 모나드, c) Cont 모나드 (Control.Monad.Cont), d) ContT 연속 변압기 모나드를 이해한다. (그리고 나는 모나드 변압기를 모호하게 이해한다. 비록이 질문에 대답하기에 충분하지 않지만.) 모두 함수가 Cont 모나드 (Cont r a)에있는 프로그램을 작성

    5

    4답변

    문제는 이것입니다. 나는 가지고있다 : f :: MonadIO m => ReaderT FooBar m Answer; f = (liftIO getArgs) >>= ... 나는 이것을 수정 된 인수와 함께 실행해야한다. m를 알 수 있기 때문에 나는 모든 m에 대한 m로 (withArgs의 인수를) 변환 어떻게 든 필요가 있기 때문에, 단순히 mapRea