##ここの「存在 という言葉の説明」あたりからが良く分からないので教えてください.
#"forall はこれらの集合の共通集合を与える。"とあるんだけど
#[a]ってのはforall a. [a]の略だとして、もしそうならaは任意の何らかの型であってそれは今は決定してないけどBoolになったりIntになったり、
#その時々で任意の何かの型を取りますよ、ってことですよね。
#任意の型に共通するメンバを考える意味が良く分かりません。
#forall a が、外に付いている場合、[Int]、[Char] などの集合だと考えるといいでしょう。
#なんでforall a.[a]だとボトムのリストになるんでしょう?
#forall a が中にある場合、a は何か一つの型です。
#はい
#そうです
#そう思っていたので、なんで「forall a. a はすべての型の共通部分であり、{⊥} のはずである。」
#なのかがさっぱり理解できません。
#どういうことでしょうか?
#そもそもその前段のheteroListの説明もどうも気になります。別に異なる型を一つのリストに押し込んでないですよね、これ。
#ShowBox型という一つの型にしているわけで。
#これを異なる型をおなじリストに押し込んだと言うのか?と
#全部同じ型じゃねーかオイみたいな
#それは単に、説明のあやでしょう。意味を汲んであげましょうよ。
#こちらの説明の方が分かりやすくありませんか? http://bit.ly/1aserpl #理解できてないので意味の汲みようがないです。
#maoeさんのblogですか、ちょっと読んでみます
#存在型がない場合、異なる型の値を一つのリストに格納することはできません。
#存在型がある場合、それが可能になります。
#と、言いたいだけですよね?
#存在型のおかげで、同じ型になるので、リストに入れるのは同じ型ですけど。
#コメント欄を見て思い出した
#これ既読だー
#「悪い事をした社員が存在するならば、社長は辞任する」と「どんな社員であれ悪いことしたら、社長は辞任する」ということだと思うんだけど
#等価であることは認めるんだけど、これforallの方って結局「任意の社員の中で誰であってもいいんだが悪いことしたら」ということが起きた瞬間に存在量化子と区別なくなる気がして
#どうも∀と∃とがちゃんと別のものとして見えない
#いや、等価だって言ってるんでいいんだけど
#なんというか、違うものが同じものだったという感じじゃなくて、そもそも違う風に見えなくないですか?って感じです。
#forall a.[a]と[forall a.a]の違いに気付いた...
#でもやっぱり共通集合だというところが飛躍してる気がする。もう少し行間を書いて欲しいぞ