tag:blogger.com,1999:blog-5888658295182480819.post2082533379112586506..comments2022-04-05T09:43:19.308-03:00Comments on Alaska Ataca a Kamtchatka: Rank-2 polymorphism and non-uniform types, revisitedMatías Giovanninihttp://www.blogger.com/profile/17772004856076119446noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-5888658295182480819.post-9603951512316512802009-05-14T09:43:00.000-03:002009-05-14T09:43:00.000-03:00@Chris: I can't believe how moronic the comment fi...@Chris: I can't believe how moronic the comment filter is. I'll post my reply to you as a new entry, as it broke when posted as a comment.Matías Giovanninihttps://www.blogger.com/profile/17772004856076119446noreply@blogger.comtag:blogger.com,1999:blog-5888658295182480819.post-91588309491154525692009-05-13T15:30:00.000-03:002009-05-13T15:30:00.000-03:00Matias: Note that I started that thread on the OCa...Matias: Note that I started that thread on the OCaml list! And here we are, two years later, and I'm still confused! :S<br /><br />I think I understand Pierce's definition and the examples he gives. What I'm missing is what the tree representation for a record type should be, and how the quantifier inside a record type is different from the (implicit) quantifier on regular polymorphicChrishttps://www.blogger.com/profile/09497993096630160212noreply@blogger.comtag:blogger.com,1999:blog-5888658295182480819.post-39623679747550724782009-05-13T15:18:00.000-03:002009-05-13T15:18:00.000-03:00@Chris: the snippet I quoted from TaPL is not very...@Chris: the snippet I quoted from TaPL is not very clear, or is it? <A HREF="http://en.wikipedia.org/wiki/Polymorphism_(computer_science)#Rank_restrictions" REL="nofollow">Wikipedia doesn't help much</A> either, but it's a starting point for defining terminology.<br /><br />It is an abuse of language to speak of records as "rank-2 polymorphic". What is polymorphic (with or without rank Matías Giovanninihttps://www.blogger.com/profile/17772004856076119446noreply@blogger.comtag:blogger.com,1999:blog-5888658295182480819.post-38305018369573604222009-05-13T11:07:00.000-03:002009-05-13T11:07:00.000-03:00Thanks. That was really interesting posts about th...Thanks. That was really interesting posts about these not so much documented nested datatypes.SpiceGuidnoreply@blogger.comtag:blogger.com,1999:blog-5888658295182480819.post-15941093066091453552009-05-13T10:47:00.000-03:002009-05-13T10:47:00.000-03:00Thanks for these posts. Rank-2/existential types i...Thanks for these posts. Rank-2/existential types in OCaml are sorely under-documented and I've been curious about them for a long time.<br /><br />Maybe I'm being dense, but could you explain why "type index = { index : 'a . int -> 'a vec -> 'a }" has rank-2 but the plain function type "int -> 'a vec -> 'a" doesn't?Chrishttps://www.blogger.com/profile/09497993096630160212noreply@blogger.com