A theory of typed coercions and its applications

TitleA theory of typed coercions and its applications
Publication TypeConference Papers
Year of Publication2009
AuthorsSwamy N, Hicks MW, Bierman GM
Conference NameProceedings of the 14th ACM SIGPLAN international conference on Functional programming
Date Published2009///
Conference LocationNew York, NY, USA
ISBN Number978-1-60558-332-7
Keywordscoercion insertion, gradual typing, nonambiguity, provenance, type-directed translation

A number of important program rewriting scenarios can be recast as type-directed coercion insertion. These range from more theoretical applications such as coercive subtyping and supporting overloading in type theories, to more practical applications such as integrating static and dynamically typed code using gradual typing, and inlining code to enforce security policies such as access control and provenance tracking. In this paper we give a general theory of type-directed coercion insertion. We specifically explore the inherent tradeoff between expressiveness and ambiguity--the more powerful the strategy for generating coercions, the greater the possibility of several, semantically distinct rewritings for a given program. We consider increasingly powerful coercion generation strategies, work out example applications supported by the increased power (including those mentioned above), and identify the inherent ambiguity problems of each setting, along with various techniques to tame the ambiguities.