ラムダ関数の応用ファンクタをテストしていますが、私が書いた以下のコードが残っています。 「myAddition」「はランダムA」の累計を取る必要があります。 私は、これは、関連する data Random a = Nill | Random a deriving (Show, Ord, Eq)
randomOrNot = [Nill, Random 22, Random 101, Nill,
これは簡単な解決策があるとは思っていますが、それは私を逃してしまい、まっすぐ答えが見つからないようです。 バイナリ機能を想定しliftA2を適用することがすでに署名は次のようになり、一度持ち上げられた通常、:: liftA2' :: (Applicative f1, Applicative f)
=> (f a -> f b -> f c) -> f1 (f a) -> f1 (f
私はアプリケーションファンクタについて学んでいます。応用的Maybeためsourceでは、pure関数は次のようになります。拡大引数を指定し instance Applicative Maybe where
pure = Just
...etc
、私はそれがどのように見えると思う:私はpure (Just 5)を呼び出すとき pure x = Just x
、それはJu
私は、次のようにHaskellの定義にカテゴリ理論から関数子の定義をマッピングすることができた:Haskのオブジェクトがタイプなので、関手F は大まかに、によって新しいタイプF aにあらゆるタイプHaskのaをマップそれに "F"を付けて言ってください。 はfmap :: (a -> b) -> (f a -> f b)を使用してのHaskを新しいモーフスF a -> F bにマップします。 これ