1

この関数の種類を理解するのに役立つ人はいますか? stateOfMind :: BotBrain -> IO (Phrase -> Phrase)

stateOfMindは関数であり、BotBrain単なる型です。

type Phrase = [String]
type PhrasePair = (Phrase, Phrase)
type BotBrain = [(Phrase, [Phrase])]

stateOfMindこの型が:BotBrain -> (Phrase -> Phrase)の 場合stateOfMind、 a を引数として取り、 aを取り、結果として a を返す新しいBotBrain関数を生成します。しかし、今では、つまり があります。どういう意味ですか?PhrasePhraseIOIO (Phrase -> Phrase)

randomIOモナド型を持っていますが、なぜそれが好きなのですか? 私たちが選んだ種のせいですか?私は通常、入力と出力にモナディックを使用しましたが、ランダムジェネレーターは実際には実行時にユーザーからの入力を取得しません。

4

1 に答える 1