User loginNavigation |
Interesting use cases for universal quantifiers in rank 2?Trevor Jim’s System P2 types the same terms as the second-rank System F2, but function arguments can only be typed as (finite) intersections of simple types. This restriction is reasonable and also seems to correspond neatly to the inner workings of a compiler which specializes polymorphic functions for every usage (such as Rust’s, IIRC). What do we lose, relative to F2? Here are the things that I can think of (in fact, they also apply to unrestricted System P, which prohibits universal quantifiers in negative positions):
Anything else? Side note: What is then the class of all datatypes whose induction principles fit into P2? Is it interesting or any bigger than that for HM? I don’t understand what intersections could mean as eliminator arguments. By Alex Shpilkin at 2016-10-23 00:23 | LtU Forum | previous forum topic | next forum topic | other blogs | 3936 reads
|
Browse archives
Active forum topics |
Recent comments
32 weeks 6 days ago
33 weeks 2 hours ago
33 weeks 2 hours ago
1 year 3 weeks ago
1 year 7 weeks ago
1 year 8 weeks ago
1 year 8 weeks ago
1 year 11 weeks ago
1 year 16 weeks ago
1 year 16 weeks ago