-2
です。haskellでrunStateを実行するargの数は
runState
をmtlで定義されていると考えてください。
s -> (a, s) :: State s a
runState
ための2つの引数がどのように見えるかいStateT s Identity
でs
とIdentity
とは何かを持っていますか?
です。haskellでrunStateを実行するargの数は
runState
をmtlで定義されていると考えてください。
s -> (a, s) :: State s a
runState
ための2つの引数がどのように見えるかいStateT s Identity
でs
とIdentity
とは何かを持っていますか?
あなたはタイプシグネチャを誤解しています。
runState :: State s a -> s -> (a, s)
この型シグネチャは、runStateが2つの引数を取ることを直接示しています。最初のタイプはState s a
で、2番目のタイプはs
です。
ハスケルのすべての関数は、1つの引数 –