Constrained polymorphic types for a calculus with name variables

Davide Ancona, Paola Giannini, Elena Zucca

Risultato della ricerca: Capitolo in libro/report/atti di convegnoContributo a conferenzapeer review

Abstract

We extend the simply-typed lambda-calculus with a mechanism for dynamic rebinding of code based on parametric nominal interfaces. That is, we introduce values which represent single fragments, or families of named fragments, of open code, where free variables are associated with names which do not obey α-equivalence. In this way, code fragments can be passed as function arguments and manipulated, through their nominal interface, by operators such as rebinding, overriding and renaming. Moreover, by using name variables, it is possible to write terms which are parametric in their nominal interface and/or in the way it is adapted, greatly enhancing expressivity. However, in order to prevent conflicts when instantiating name variables, the name-polymorphic types of such terms need to be equipped with simple inequality constraints. We show soundness of the type system.

Lingua originaleInglese
Titolo della pubblicazione ospite21st International Conference on Types for Proofs and Programs, TYPES 2015
EditorTarmo Uustalu
EditoreSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Pagine41-429
Numero di pagine389
ISBN (elettronico)9783959770309
DOI
Stato di pubblicazionePubblicato - 1 mar 2018
Evento21st International Conference on Types for Proofs and Programs, TYPES 2015 - Tallinn, Estonia
Durata: 18 mag 201521 mag 2015

Serie di pubblicazioni

NomeLeibniz International Proceedings in Informatics, LIPIcs
Volume69
ISSN (stampa)1868-8969

???event.eventtypes.event.conference???

???event.eventtypes.event.conference???21st International Conference on Types for Proofs and Programs, TYPES 2015
Paese/TerritorioEstonia
CittàTallinn
Periodo18/05/1521/05/15

Fingerprint

Entra nei temi di ricerca di 'Constrained polymorphic types for a calculus with name variables'. Insieme formano una fingerprint unica.

Cita questo