Applicativeって型に対して一意に定まるわけではないという認識もあり、Optionに対してのApplicativeな合成ってSomeを使った早期リターンを作れると思っている
この歪さって、型に対するMonoidやApplicative, Monadのインスタンスを一意に定めようとすることに対する違和感な気がする
Bool(束)からモノイドを取り出そうとした時、 (Bool, ∨, ⊥)と(Bool, ∧, ⊤) みたいな二つ作れるわけだけど、別にBoolから一意に定まるわけじゃないよねっていう。
だからBoolのモノイドって言ったら「え?どっちの?」ってなるべきで、型から一意に定める場合は慣習として積の定義を使うんだと思っている。
で、関手Fに対してApplicative Fがあった時、そうじゃない場合はAlternative Fとしたり、Applicative (Alt F) とすることで明示的に扱う理解でいる
@pxfnc 型からクラスのインスタンスを一意に決めるのは、プログラミングでの利便性からで、数学ではそういうことはあんましなさそうな気がする