Formalization of generics for the .NET common language runtime
2004; Association for Computing Machinery; Volume: 39; Issue: 1 Linguagem: Inglês
10.1145/982962.964005
ISSN1558-1160
AutoresDachuan Yu, Andrew Kennedy, Don Syme,
Tópico(s)Model-Driven Software Engineering Techniques
ResumoWe present a formalization of the implementation of generics in the .NET Common Language Runtime (CLR), focusing on two novel aspectsof the implementation: mixed specialization and sharing, and efficient support for run-time types. Some crucial constructs used in the implementation are dictionaries and run-time type representations. We formalize these aspects type-theoretically in a way that corresponds in spirit to the implementation techniques used in practice. Both the techniques and the formalization also help us understand the range of possible implementation techniques for other languages, e.g., ML, especially when additional source language constructs such as run-time types are supported. A useful by-product of this study is a type system for a subset of the polymorphic IL proposed for the .NET CLR.
Referência(s)