Context-Oriented programming languages provide us with primitive constructs to adapt programs behaviour depending on the evolution of their operational environment. In this paradigm developers must provide behaviour for any context a program may find in. A missing behaviour causes a new kind of runtime error: an adaptation error. We propose a novel mechanism, based on implicit function, that allows the execution environment to supply such behaviour when the program is not able to adapt. We assess our proposal extending a core functional language designed for adaptivity. We integrate the mechanism in a type and effect system, in the form of implicit coercions, showing that our type discipline guarantees that no adaptation errors occur.

Safe adaptation through implicit effect coercion

Basile D;
2015

Abstract

Context-Oriented programming languages provide us with primitive constructs to adapt programs behaviour depending on the evolution of their operational environment. In this paradigm developers must provide behaviour for any context a program may find in. A missing behaviour causes a new kind of runtime error: an adaptation error. We propose a novel mechanism, based on implicit function, that allows the execution environment to supply such behaviour when the program is not able to adapt. We assess our proposal extending a core functional language designed for adaptivity. We integrate the mechanism in a type and effect system, in the form of implicit coercions, showing that our type discipline guarantees that no adaptation errors occur.
2015
Istituto di Scienza e Tecnologie dell'Informazione "Alessandro Faedo" - ISTI
978-3-319-25526-2
Type system
Adaptive
File in questo prodotto:
File Dimensione Formato  
prod_345657-doc_108485.pdf

solo utenti autorizzati

Descrizione: Safe adaptation through implicit effect coercion
Tipologia: Versione Editoriale (PDF)
Dimensione 782.95 kB
Formato Adobe PDF
782.95 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14243/312174
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 1
  • ???jsp.display-item.citation.isi??? 0
social impact