*First-class labels for extensible rows. (draft)*

Daan Leijen.

Submitted to POPL'05. (PDF, BibTeX)

**Abstract**:
This paper describes a type system for extensible records and variants with first-class labels; labels are polymorphic and can be passed as arguments. This increases the expressiveness of conventional record calculi significantly, and we show how we can encode intersection types, closed-world overloading, type case, label selective calculi, and first-class messages. We formally motivate the need for row equality predicates to express type constraints in the presence of polymorphic labels. This naturally leads to an orthogonal treatment of unrestricted row polymorphism that can be used to express first-class patterns. Based on the theory of qualified types, we present an effective type inference algorithm and efficient compilation method. The type inference algorithm, including the discussed extensions, is fully implemented in the experimental Morrow compiler.

Always trust Daan to come up with something both elegant and practical...! However the examples involving bottom (undefined) labels left me skeptical.

## Recent comments

17 hours 37 min ago

19 hours 46 min ago

1 day 3 hours ago

1 day 8 hours ago

1 day 8 hours ago

1 day 10 hours ago

1 day 17 hours ago

1 day 18 hours ago

1 day 21 hours ago

1 day 21 hours ago