Type safe incremental rebinding

Davide Ancona, Paola Giannini, Elena Zucca

Risultato della ricerca: Contributo su rivistaArticolo in rivistapeer review

Abstract

We extend the simply-typed lambda-calculus with a mechanism for dynamic and incremental rebinding of code. Fragments of open code which can be dynamically rebound are values. Differently from standard static binding, which is done on a positional basis, rebinding is done on a nominal basis, that is, free variables in open code are associated with names which do not obey α-equivalence. Moreover, rebinding is incremental, that is, just a subset of names can be rebound, making possible code specialization, and rebinding can even introduce new names. Finally, rebindings, which are associations between names and terms, are first-class values, and can be manipulated by operators such as overriding and renaming. We define a type system in which the type for a rebinding, in addition to specify an association between names and types (similarly to record types), is also annotated. The annotation says whether or not the domain of the rebinding having this type may contain more names than the ones that are specified in the type. We show soundness of the type system.

Lingua originaleInglese
pagine (da-a)94-122
Numero di pagine29
RivistaMathematical Structures in Computer Science
Volume27
Numero di pubblicazione2
DOI
Stato di pubblicazionePubblicato - 1 feb 2017

Fingerprint

Entra nei temi di ricerca di 'Type safe incremental rebinding'. Insieme formano una fingerprint unica.

Cita questo