1

さまざまな例がどのように機能するかを理解しようとして、確率パッケージをいじっていました。多くの例では Numeric.Probability.Monad をインポートしていますが、これは非表示になっているように見えるため、例を実行できないことを意味します。

モンティ・ホールの例:

module Numeric.Probability.Example.MontyHall where

import qualified Numeric.Probability.Distribution as Dist
import qualified Numeric.Probability.Transition as Trans
import Numeric.Probability.Simulation ((~.), )

import Numeric.Probability.Percentage
    (Dist, RDist, Trans, )

import qualified Numeric.Probability.Monad as MonadExt

そして、ghciで実行しようとすると

:load "MontyHall.hs"

MontyHall.hs:10:18:
    Could not find module `Numeric.Probability.Monad'
    it is a hidden module in the package `probability-0.2.4'
    Use -v to see a list of the files searched for.
Failed, modules loaded: none.

実行できない例のポイントは何なのか、明らかに私は何か間違ったことをしています。それで、私はここで何を間違っていますか?

4

1 に答える 1

1

ファイルでNumeric.Probability.Monad使用される唯一の関数は次のとおりです。MontyHall

compose :: Monad m => [a -> m a] -> a -> m a
compose = foldl (flip (<=<)) return

これは簡単なヘルパー関数であり、自分でインライン化することができます。

于 2013-02-03T20:54:44.277 に答える