ContextL är en förlängning till Common Lisp Object System som möjliggör Context-orienterad programmering. Det ger medel för att associera partiella klass- och metoddefinitioner med lager och för att aktivera och deaktivera sådana lager i kontrollflödet i ett löpande program. När ett lager aktiveras blir de partiella definitionerna en del av programmet tills det här lagret avaktiveras. Detta har effekten att beteendet hos ett program kan ändras enligt sammanhanget för dess användning utan att behöva nämna sådana sammanhang beroenden i det drabbade basprogrammet. Vi illustrerar dessa idéer genom att ge olika UI åsikter om samma objekt samtidigt som vi behåller den konceptuella enkelheten i objektorienterad programmering som objekten själva vet hur de ska bete sig, i vårt fall hur de ska visa sig. Dessa till synes motstridiga mål kan uppnås genom att dela upp klassdefinitioner i olika skikt i stället för att faktorisera visningskoden i olika klasser.
ContextL REF förverkligar ett kontextorienterat programmeringsspråk.
Language constructs for context-oriented programming: an overview of ContextL
{'venue': "DLS '05", 'journal': None, 'mag_field_of_study': ['Computer Science']}