##引用: indeed, any monad can be made Applicative by taking pure = return, and <*> = ap.
#で、instance Applicative (-> a) where
#pure = the S combinator, and <*> = the K combinator です
#もし、議論の続きがあれば、ここに残しておいてください
#また、見にきます
#あれ?(-> a)はApplicativeのインスタンスになるんだっけ?
#((->) a)じゃなくて?
#((->) a)なら、pureが K で (<*>)が S じゃないかしらん。
#(-> a) もなんとなく Applicative にできそうな気がします(気がするだけだけど)
#State が逆に進んでいく State モナドっていうのがあったのを思い出した
##ikegami さんありがとうです。元エントリのほうにもコメントしておきます
##↑そういえばこれかな
#なつかしい。やっぱり進歩しとらんなぁ > 儂 orz
#元ネタがあったんですね > 2.8 Variation six: Backwards State
#(-> a) を Applicative にしようと思って Functor にする時点で挫折
#いろいろまちがえてて、んがぐぐ
#(->) a, K, S は nobsun の言うことがあってる
#でも、あらゆるモナドが Applicative で、その場合 <*> = ap というのはあってる
#(-> a) を Functor にってのは、圏の逆圏を考えて云々なんだろうけど(おそらく)、眠いので検算はまた次の機会にでも...
#duarity から、K と S が ((->) a) と (-> a) でいれかわるってのもありそうな話だけど、きちんとたしかめてないです...
#-> は uncurry して A x B とかすると話がシンプルになるかなとか、妄想