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

ISSN

1558-1160

Autores

Dachuan Yu, Andrew Kennedy, Don Syme,

Tópico(s)

Model-Driven Software Engineering Techniques

Resumo

We 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)
Altmetric
PlumX