Programming language implementations for context-oriented self-adaptive systems

The context-oriented programming paradigm is designed to enable self-adaptation, or dynamic behavior modification of software systems, in response to changes in their surrounding environment. Contextoriented programming offers an adaptation model, from a programming language perspective, that mainta...

Full description

Saved in:
Bibliographic Details
Published in:Information and software technology Vol. 143; p. 106789
Main Authors: Cardozo, Nicolás, Mens, Kim
Format: Journal Article
Language:English
Published: Elsevier B.V 01.03.2022
Subjects:
ISSN:0950-5849, 1873-6025
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract The context-oriented programming paradigm is designed to enable self-adaptation, or dynamic behavior modification of software systems, in response to changes in their surrounding environment. Contextoriented programming offers an adaptation model, from a programming language perspective, that maintains a clean modularisation between the application and adaptation logic, as well as between the components providing adaptations. We use three implementation techniques for context-oriented programming languages to assess their appropriateness to foster self-adaptive systems. These approaches take advantage of the capabilities offered by the host programming language to realize self-adaptation as proposed by context-oriented languages. We evaluate each of these approaches by assessing their modularity and complexity when defining adaptations, and by comparing their run-time performance on a simple benchmark. Our results show a higher modularity than that for common architecture based self-adaptive systems, while maintaining comparable performance. We conclude that context-oriented programming is an appropriate paradigm to realize self-adaptation.
AbstractList The context-oriented programming paradigm is designed to enable self-adaptation, or dynamic behavior modification of software systems, in response to changes in their surrounding environment. Contextoriented programming offers an adaptation model, from a programming language perspective, that maintains a clean modularisation between the application and adaptation logic, as well as between the components providing adaptations. We use three implementation techniques for context-oriented programming languages to assess their appropriateness to foster self-adaptive systems. These approaches take advantage of the capabilities offered by the host programming language to realize self-adaptation as proposed by context-oriented languages. We evaluate each of these approaches by assessing their modularity and complexity when defining adaptations, and by comparing their run-time performance on a simple benchmark. Our results show a higher modularity than that for common architecture based self-adaptive systems, while maintaining comparable performance. We conclude that context-oriented programming is an appropriate paradigm to realize self-adaptation.
ArticleNumber 106789
Author Mens, Kim
Cardozo, Nicolás
Author_xml – sequence: 1
  givenname: Nicolás
  surname: Cardozo
  fullname: Cardozo, Nicolás
  email: n.cardozo@uniandes.edu.co
  organization: Systems and Computing Engineering Department, Universidad de los Andes, FLAG Laboratory, Bogotá, Colombia
– sequence: 2
  givenname: Kim
  surname: Mens
  fullname: Mens, Kim
  email: kim.mens@uclouvain.be
  organization: ICTEAM, Université Catholique de Louvain, Louvain-la-Neuve, Belgium
BookMark eNqFkE1LAzEQhoMo2Fb_gYf9A6nJZj89CFL8gkI96DmkycySspuUJBb7792ynjzoaeAdnpeZZ07OnXdAyA1nS854dbtbWofR4zJnOR-jqm7aMzLjTS1oxfLynMxYWzJaNkV7SeYx7hjjNRNsRjZvwXdBDYN1XdYr132qDjI77HsYwCWVrHcxQx8y7V2Cr0R9sOMCTBahR6qM2id7gCweY4IhXpELVH2E65-5IB9Pj--rF7rePL-uHtZUizJPFPMay6o2ja5YUaBptTGoUZUNq3XVKCGquhWsZLkxLYBQuOWIW-Qoim2rjFiQu6lXBx9jAJTaTtemoGwvOZMnNXInJzXypEZOaka4-AXvgx1UOP6H3U8YjI8dLAQZ9ehCg7EBdJLG278LvgHvU4Vg
CitedBy_id crossref_primary_10_1016_j_jss_2023_111614
crossref_primary_10_1016_j_infsof_2022_107132
Cites_doi 10.1007/s007790170019
10.1002/spe.2107
10.1109/MS.2006.61
10.1145/505145.505148
10.5381/jot.2008.7.3.a4
10.1016/j.scico.2010.12.007
10.1016/j.jss.2012.03.024
10.1147/sj.384.0693
10.1145/944579.944587
10.1145/1119479.1119483
10.3233/APO-2007-033
10.1109/MIS.2003.1200718
10.1016/j.scico.2010.11.013
10.1007/11531142_14
10.1145/38807.38821
10.1007/BFb0053381
10.1145/1516533.1516538
ContentType Journal Article
Copyright 2021 Elsevier B.V.
Copyright_xml – notice: 2021 Elsevier B.V.
DBID AAYXX
CITATION
DOI 10.1016/j.infsof.2021.106789
DatabaseName CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
Discipline Business
EISSN 1873-6025
ExternalDocumentID 10_1016_j_infsof_2021_106789
S0950584921002305
GroupedDBID --K
--M
-~X
.DC
.~1
0R~
1B1
1~.
1~5
29I
4.4
457
4G.
5GY
5VS
7-5
71M
77K
8P~
9JN
AABNK
AACTN
AAEDT
AAEDW
AAIAV
AAIKJ
AAKOC
AALRI
AAOAW
AAQFI
AAQXK
AAXUO
AAYFN
AAYOK
ABBOA
ABFNM
ABFRF
ABJNI
ABMAC
ABTAH
ABXDB
ABYKQ
ACDAQ
ACGFO
ACGFS
ACGOD
ACNNM
ACRLP
ACZNC
ADBBV
ADEZE
ADJOM
ADMUD
AEBSH
AEFWE
AEKER
AENEX
AFKWA
AFTJW
AGHFR
AGUBO
AGYEJ
AHHHB
AHZHX
AIALX
AIEXJ
AIKHN
AITUG
AJBFU
AJOXV
ALMA_UNASSIGNED_HOLDINGS
AMFUW
AMRAJ
AOUOD
ASPBG
AVWKF
AXJTR
AZFZN
BKOJK
BKOMP
BLXMC
CS3
DU5
EBS
EFJIC
EFLBG
EJD
EO8
EO9
EP2
EP3
FDB
FEDTE
FGOYB
FIRID
FNPLU
FYGXN
G-Q
G8K
GBLVA
GBOLZ
HLZ
HVGLF
HZ~
IHE
J1W
KOM
LG9
M41
MO0
MS~
N9A
O-L
O9-
OAUVE
OZT
P-8
P-9
P2P
PC.
PQQKQ
Q38
R2-
RIG
ROL
RPZ
SBC
SDF
SDG
SDP
SES
SEW
SPC
SPCBC
SSV
SSZ
T5K
TWZ
UHS
UNMZH
WH7
WUQ
XFK
ZY4
~G-
77I
9DU
AATTM
AAXKI
AAYWO
AAYXX
ABDPE
ABWVN
ACLOT
ACRPL
ACVFH
ADCNI
ADNMO
AEIPS
AEUPX
AFJKZ
AFPUW
AGQPQ
AIGII
AIIUN
AKBMS
AKRWK
AKYEP
ANKPU
APXCP
CITATION
EFKBS
~HD
ID FETCH-LOGICAL-c352t-f27f567d8c6044fd9cddfcfa5807c68a3367930502dd9ee3afb1ffbf1f34b9ad3
ISICitedReferencesCount 5
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000727767300008&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0950-5849
IngestDate Tue Nov 18 22:04:24 EST 2025
Sat Nov 29 07:05:28 EST 2025
Fri Feb 23 02:41:07 EST 2024
IsDoiOpenAccess false
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Keywords Context-oriented programming
Language engineering
Programming language abstractions
Self-adaptive systems
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c352t-f27f567d8c6044fd9cddfcfa5807c68a3367930502dd9ee3afb1ffbf1f34b9ad3
OpenAccessLink http://hdl.handle.net/2078.1/263354
ParticipantIDs crossref_citationtrail_10_1016_j_infsof_2021_106789
crossref_primary_10_1016_j_infsof_2021_106789
elsevier_sciencedirect_doi_10_1016_j_infsof_2021_106789
PublicationCentury 2000
PublicationDate March 2022
2022-03-00
PublicationDateYYYYMMDD 2022-03-01
PublicationDate_xml – month: 03
  year: 2022
  text: March 2022
PublicationDecade 2020
PublicationTitle Information and software technology
PublicationYear 2022
Publisher Elsevier B.V
Publisher_xml – name: Elsevier B.V
References Hirschfeld, Costanza, Nierstrasz (bib0030) 2008; 7
Cardozo, González, Mens, Straeten, D'Hondt (bib0011) 2013
Aracic, Gasiunas, Mezini, Ostermann (bib0005) 2006
Poncelet, Vigneron (bib0049) June 2012
A. Goldberg and D. Robson. Smalltalk-80: the Language and its Implementation. 1983. ISBN 0-20111371-6.
Shadbolt (bib0058) 2003; 18
Kamina, Aotani, Masuhara (bib0035) 2015
Taing, Springer, Cardozo, Schill (bib0061) 2016
Appeltauer, Hirschfeld, Lincke (bib0004) 2013; 12
Inoue, Igarashi (bib0032) 2016
Bainomugisha, Vallejos, De Roover, Lombide Carreton, De Meuter (bib0006) 2012
Smaragdakis, Batory (bib0059) 2002; 11
Pina, Cachopo (bib0048) 2012
Popovici, Gross, Alonso (bib0050) 2002
Salehie, Tahvildari (bib0052) 2009; 4
Dey (bib0015) 2001; 5
González, Mens, Heymans (bib0023) 2007
Maingret, Le Mouël, Ponge, Stouls, Cao, Loiseau (bib0045) 2015
Appeltauer, Hirschfeld, Haupt, Lincke, Perscheid (bib0002) 2009
Sato, Chiba, Tatsubori (bib0056) 2003
.
G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.M. Loingtier, and J. Irwin. Aspect-oriented programming. vol.1241, pp. 220–242. 1997. ISBN 978-3-540-63089-0. doi
Costanza, Hirschfeld (bib0013) 2005
Maes (bib0044) 1987; 22
González, Mens, Cádiz (bib0024) 2008; 14
Desmet, Vallejos, Costanza (bib0014) 2006
Mens, Cardozo, Duhoux (bib0046) 2016
Cardozo, González, Mens (bib0010) 2012
Smith (bib0060) 1984
Schreiber, Panigati (bib0057) 2014
Nallur, Cardozo, Clarke (bib0047) 2016
Floch, Hallsteinsen, Stav, Eliassen, Lund, Gjorven (bib0020) 2006; 23
Villazón, Binder, Ansaloni, Moret (bib0064) 2009
Herrmann (bib0028) 2007; 2
Allan, Avgustinov, Christensen, Hendren, Kuzins, Lhoták, Lhoták, Moor, Sereni, Sittampalam, Tibble (bib0001) 2005
Hirschfeld, Costanza, Haupt (bib0029) 2007
Weiser, Gold, Brown (bib0065) 1999; 38
Günther, Sunkle (bib0027) 2012; 77
Salvaneschi, Ghezzi, Pradella (bib0054) 2012; 85
Kiczales, des Rivières, Bobrow (bib0039) 1991
Kasin (bib0038) 2012
Lincke, Appeltauer, Steinert, Hirschfeld (bib0043) 2011; 76
Elyasaf, Sturm (bib0019) 2021
Cardozo, Clarke (bib0008) 2015
Leger, Masuhara, Figueroa (bib0041) 2020
Cardozo, Günther, D'Hondt, Mens (bib0009) 2011
Duhoux, Mens, Dumas (bib0018) 2019
Leuthäuser, Aßmann (bib0042) 2015
González, Mens, Colacioiu, Cazzola (bib0026) 2013
Kamina, Aotani, Masuhara (bib0033) 2011
(bib0031) 2005
Wernli, Gurtner, Nierstrasz (bib0066) 2011
Bäumer, Riehle, Siberski, Wulf (bib0007) 2000
González, Cardozo, Mens, Cádiz, Libbrecht, Goffaux (bib0025) 2011; 6563
Van Cutsem, Miller (bib0063) 2011
Vallejos, González, Costanza, Meuter, D'Hondt, Mens (bib0062) 2010; 6144
Costanza (bib0012) 2003; 38
L. Salzman and J. Aldrich. Prototypes with multiple dispatch: an expressive and dynamic object model. vol.3586, pp. 312–336, 2005. ISBN 9783-540-27992-1. doi
M. Pukall, C. Kästner, W. Cazzola, S. Götz, A. Grebhahn, R. Schröter, and G. Saake. JavAdaptor —flexible runtime updates of Java applications. Software: practice and Experience, 2012. ISSN 1097-024X. doi
Ghezzi, Pradella, Salvaneschi (bib0021) 2010
Kamina, Aotani, Masuhara, Tamai (bib0036) 2016; 1
Appeltauer, Hirschfeld, Haupt, Masuhara (bib0003) 2011; 28
Salvaneschi, Ghezzi, Pradella (bib0053) 2012
Kamina, Aotani, Masuhara (bib0037) 2017
Duhoux, Dumas, Leung, Mens (bib0017) 2019
Kamina, Aotani, Masuhara (bib0034) 2013
Ducasse, Nierstrasz, Schärli, Wuyts, Black (bib0016) 2006; 28
10.1016/j.infsof.2021.106789_bib0055
Maes (10.1016/j.infsof.2021.106789_bib0044) 1987; 22
Smith (10.1016/j.infsof.2021.106789_bib0060) 1984
Aracic (10.1016/j.infsof.2021.106789_bib0005) 2006
Shadbolt (10.1016/j.infsof.2021.106789_bib0058) 2003; 18
Dey (10.1016/j.infsof.2021.106789_bib0015) 2001; 5
Kamina (10.1016/j.infsof.2021.106789_bib0034) 2013
Elyasaf (10.1016/j.infsof.2021.106789_bib0019) 2021
10.1016/j.infsof.2021.106789_bib0051
Salehie (10.1016/j.infsof.2021.106789_bib0052) 2009; 4
Salvaneschi (10.1016/j.infsof.2021.106789_bib0053) 2012
Villazón (10.1016/j.infsof.2021.106789_bib0064) 2009
Hirschfeld (10.1016/j.infsof.2021.106789_bib0030) 2008; 7
Kiczales (10.1016/j.infsof.2021.106789_bib0039) 1991
Pina (10.1016/j.infsof.2021.106789_bib0048) 2012
Hirschfeld (10.1016/j.infsof.2021.106789_bib0029) 2007
Van Cutsem (10.1016/j.infsof.2021.106789_bib0063) 2011
Weiser (10.1016/j.infsof.2021.106789_bib0065) 1999; 38
Popovici (10.1016/j.infsof.2021.106789_bib0050) 2002
Duhoux (10.1016/j.infsof.2021.106789_bib0018) 2019
Smaragdakis (10.1016/j.infsof.2021.106789_bib0059) 2002; 11
10.1016/j.infsof.2021.106789_bib0022
Floch (10.1016/j.infsof.2021.106789_bib0020) 2006; 23
Bainomugisha (10.1016/j.infsof.2021.106789_bib0006) 2012
González (10.1016/j.infsof.2021.106789_bib0024) 2008; 14
Inoue (10.1016/j.infsof.2021.106789_bib0032) 2016
Cardozo (10.1016/j.infsof.2021.106789_bib0011) 2013
Kamina (10.1016/j.infsof.2021.106789_bib0035) 2015
Ghezzi (10.1016/j.infsof.2021.106789_bib0021) 2010
Sato (10.1016/j.infsof.2021.106789_bib0056) 2003
Cardozo (10.1016/j.infsof.2021.106789_bib0009) 2011
Desmet (10.1016/j.infsof.2021.106789_bib0014) 2006
Costanza (10.1016/j.infsof.2021.106789_bib0013) 2005
Appeltauer (10.1016/j.infsof.2021.106789_bib0003) 2011; 28
Mens (10.1016/j.infsof.2021.106789_bib0046) 2016
Kasin (10.1016/j.infsof.2021.106789_bib0038) 2012
Leuthäuser (10.1016/j.infsof.2021.106789_bib0042) 2015
Costanza (10.1016/j.infsof.2021.106789_bib0012) 2003; 38
Duhoux (10.1016/j.infsof.2021.106789_bib0017) 2019
Allan (10.1016/j.infsof.2021.106789_bib0001) 2005
Schreiber (10.1016/j.infsof.2021.106789_bib0057) 2014
Herrmann (10.1016/j.infsof.2021.106789_bib0028) 2007; 2
(10.1016/j.infsof.2021.106789_bib0031) 2005
Günther (10.1016/j.infsof.2021.106789_bib0027) 2012; 77
Bäumer (10.1016/j.infsof.2021.106789_bib0007) 2000
Lincke (10.1016/j.infsof.2021.106789_bib0043) 2011; 76
González (10.1016/j.infsof.2021.106789_bib0026) 2013
Kamina (10.1016/j.infsof.2021.106789_bib0033) 2011
Cardozo (10.1016/j.infsof.2021.106789_bib0010) 2012
Maingret (10.1016/j.infsof.2021.106789_bib0045) 2015
Appeltauer (10.1016/j.infsof.2021.106789_bib0002) 2009
Salvaneschi (10.1016/j.infsof.2021.106789_bib0054) 2012; 85
Taing (10.1016/j.infsof.2021.106789_bib0061) 2016
Cardozo (10.1016/j.infsof.2021.106789_bib0008) 2015
Appeltauer (10.1016/j.infsof.2021.106789_bib0004) 2013; 12
Kamina (10.1016/j.infsof.2021.106789_bib0036) 2016; 1
Kamina (10.1016/j.infsof.2021.106789_bib0037) 2017
Vallejos (10.1016/j.infsof.2021.106789_bib0062) 2010; 6144
Poncelet (10.1016/j.infsof.2021.106789_bib0049) 2012
Ducasse (10.1016/j.infsof.2021.106789_bib0016) 2006; 28
10.1016/j.infsof.2021.106789_bib0040
Wernli (10.1016/j.infsof.2021.106789_bib0066) 2011
González (10.1016/j.infsof.2021.106789_bib0025) 2011; 6563
Nallur (10.1016/j.infsof.2021.106789_bib0047) 2016
González (10.1016/j.infsof.2021.106789_bib0023) 2007
Leger (10.1016/j.infsof.2021.106789_bib0041) 2020
References_xml – start-page: 122
  year: 2016
  end-page: 128
  ident: bib0047
  article-title: Clonal plasticity: a method for decentralized adaptation in multi-agent systems
  publication-title: Proceedings of the International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS’16
– year: 2015
  ident: bib0035
  article-title: Generalized layer activation mechanism through contexts and subscribers
  publication-title: Proceedings of the International Conference on Modularity, MODULARITY’15
– volume: 4
  start-page: 14
  year: 2009
  ident: bib0052
  article-title: Self-adaptive software: landscape and research challenges
  publication-title: ACM Trans. Auton. Adapt. Syst.
– start-page: 50
  year: 2016
  end-page: 54
  ident: bib0032
  article-title: A library-based approach to context-dependent computation with reactive values: suppressing reactions of contextdependent functions using dynamic binding
  publication-title: Proceedings of the International Conference on Modularity, MODULARITY Companion’16
– start-page: 175
  year: 2014
  end-page: 184
  ident: bib0057
  article-title: Context-aware software approaches: a comparison and an integration proposal
  publication-title: Proceedings of the Italian Symposium on Advance Database Systems, SEBD’14
– reference: L. Salzman and J. Aldrich. Prototypes with multiple dispatch: an expressive and dynamic object model. vol.3586, pp. 312–336, 2005. ISBN 9783-540-27992-1. doi:
– start-page: 2
  year: 2013
  ident: bib0034
  article-title: A unified context activation mechanism
  publication-title: Proceedings of the 5th International Workshop on ContextOriented Programming, COP’13
– start-page: 396
  year: 2007
  end-page: 407
  ident: bib0029
  article-title: An introduction to context-oriented programming with contexts
  publication-title: Generative and Transformational Techniques Generative and Transformational Techniques in Software Engineering
– start-page: 17
  year: 2017
  end-page: 21
  ident: bib0037
  article-title: Push-based reactive layer activation in contextoriented programming
  publication-title: Proceedings of the 9th International Workshop on Context-Oriented Programming, COP’17
– reference: M. Pukall, C. Kästner, W. Cazzola, S. Götz, A. Grebhahn, R. Schröter, and G. Saake. JavAdaptor —flexible runtime updates of Java applications. Software: practice and Experience, 2012. ISSN 1097-024X. doi:
– reference: A. Goldberg and D. Robson. Smalltalk-80: the Language and its Implementation. 1983. ISBN 0-20111371-6.
– year: 2003
  ident: bib0056
  article-title: Generative programming and component engineering
  publication-title: Proceedings of the Second International Conference, GPCE 2003
– volume: 28
  start-page: 331
  year: 2006
  end-page: 388
  ident: bib0016
  article-title: Traits: a mechanism for fine-grained reuse
  publication-title: ACM Trans. Program. Lang. Syst.
– volume: 38
  start-page: 693
  year: 1999
  end-page: 696
  ident: bib0065
  article-title: The origins of ubiquitous computing research at PARC in the late 1980s
  publication-title: IBM Syst. J.
– start-page: 9
  year: 2019
  end-page: 16
  ident: bib0018
  article-title: Implementation of a feature-based context-oriented programming language
  publication-title: Proceedings of the Workshop on Context-oriented Programming, COP’19
– year: 2016
  ident: bib0061
  article-title: A dynamic instance binding mechanism supporting run-time variability of role-based software systems
  publication-title: Proceedings of the International Workshop on Live Adaptation of Software Systems, LASSY’16
– start-page: 16
  year: 2021
  end-page: 23
  ident: bib0019
  article-title: Towards a framework for analyzing context-oriented programming languages
  publication-title: Proceedings of the 13th ACM International Workshop on Context-Oriented Programming and Advanced Modularity, COP’21
– volume: 5
  start-page: 4
  year: 2001
  end-page: 7
  ident: bib0015
  article-title: Understanding and using context
  publication-title: Pers. Ubiquitous Comput.
– start-page: 141
  year: 2002
  end-page: 147
  ident: bib0050
  article-title: Dynamic weaving for aspect-oriented programming
  publication-title: Proceedings of the International Conference on AspectOriented Software Development
– volume: 12
  start-page: 1
  year: 2013
  end-page: 37
  ident: bib0004
  article-title: Deaclarative layer composition with the jcop programming language
  publication-title: J. Object Technol.
– start-page: 7
  year: 2016
  end-page: 12
  ident: bib0046
  article-title: A context-oriented software architecture
  publication-title: Proceedings of the International Workshop on Context-Oriented Programming, COP’16
– volume: 23
  start-page: 62
  year: 2006
  end-page: 70
  ident: bib0020
  article-title: Using architecture models for runtime adaptability
  publication-title: IEEE Software
– start-page: 253
  year: 2011
  end-page: 264
  ident: bib0033
  article-title: EventCJ: a context-oriented programming language with declarative event-based context transition
  publication-title: Proceedings of International Conference on AspectOriented Software Development, AOSD’11
– year: 1991
  ident: bib0039
  article-title: The Art of the Metaobject Protocol
– reference: G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.M. Loingtier, and J. Irwin. Aspect-oriented programming. vol.1241, pp. 220–242. 1997. ISBN 978-3-540-63089-0. doi:
– start-page: 135
  year: 2006
  end-page: 173
  ident: bib0005
  article-title: Transactions On Aspect-Oriented Software Development I. Chapter An overview of Caesarj
– start-page: 1
  year: 2020
  end-page: 7
  ident: bib0041
  article-title: Interfaces for modular reasoning in context-oriented programming
  publication-title: Proceedings of the International Workshop on Context Oriented Programming and Advanced Modularity, COP’20
– start-page: 25
  year: 2015
  end-page: 33
  ident: bib0042
  article-title: Enabling viewbased programming with scroll: using roles and dynamic dispatch for establishing view-based programming
  publication-title: Proceedings of the Joint Workshop on ModelDriven Robot Software Engineering and View-based Software-Engineering, MORSE/VAO ’15
– start-page: 7
  year: 2015
  ident: bib0045
  article-title: Towards a decoupled context-oriented programming language for the internet of things
  publication-title: Proceedings of the 7th International Workshop on Context-Oriented Programming
– start-page: 23
  year: 1984
  end-page: 35
  ident: bib0060
  article-title: Reflection and semantics in Lisp
  publication-title: Proceedings of the ACM Symposium on Principles of Programming Languages
– start-page: 10
  year: 2005
  end-page: 16
  ident: bib0001
  article-title: abc: the AspectBench compiler for AspectJ
  publication-title: Generative Programming and Component Engineering
– start-page: 191
  year: 2013
  end-page: 198
  ident: bib0011
  article-title: Modeling and analyzing self-adaptive systems with context petri nets
  publication-title: Proceedings of the Symposium on Theoretical Aspects of Software Engineering, TASE’13
– start-page: 77
  year: 2007
  end-page: 88
  ident: bib0023
  article-title: Highly dynamic behaviour adaptability through prototypes with subjective multimethods
  publication-title: Proceedings of the Dynamic Languages Symposium
– start-page: 1
  year: 2012
  end-page: 3
  ident: bib0010
  article-title: Uniting global and local context behavior with context petri nets
  publication-title: Proceedings of the International Workshop on Context-Oriented Programming, number 3 in COP’12
– volume: 2
  start-page: 181
  year: 2007
  end-page: 207
  ident: bib0028
  article-title: A precise model for contextual roles: the programming language objectteams/java
  publication-title: Appl. Ontol.
– start-page: 191
  year: 2012
  end-page: 202
  ident: bib0053
  article-title: ContextErlang: introducing context-oriented programming in the actor model
  publication-title: Proceedings of International Conference on Aspect-Oriented Software Development, AOSD’12
– volume: 11
  start-page: 215
  year: 2002
  end-page: 255
  ident: bib0059
  article-title: Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs
  publication-title: ACM Trans. Softw. Eng. Methodol.
– start-page: 15
  year: 2000
  end-page: 32
  ident: bib0007
  article-title: Role Object, Chapter 2,
– start-page: 21
  year: 2011
  end-page: 31
  ident: bib0066
  article-title: Using first-class contexts to realize dynamic software updates
  publication-title: Proceedings of the European Smalltalk User Group (ESUG’11)
– start-page: 209
  year: 2013
  end-page: 220
  ident: bib0026
  article-title: Context traits: dynamic behaviour adaptation through run-time trait recomposition
  publication-title: Proceedings of International Conference on AspectOriented Software Development, AOSD’13
– year: 2006
  ident: bib0014
  article-title: Introducing mixin layers to support the development of context-aware systems
  publication-title: Proceedings of the European Workshop on Aspects in Software, EWAS’06
– start-page: 1
  year: 2011
  end-page: 8
  ident: bib0063
  article-title: traits.js: robust object composition and high-integrity objects for ECMAScript 5
  publication-title: Proceedings of the ACM International Workshop on Programming Language and Systems Technologies for Internet Clients, PLASTIC’11
– volume: 28
  start-page: 272
  year: 2011
  end-page: 292
  ident: bib0003
  article-title: Contextj: context-oriented programming with java
  publication-title: J. Jpn. Soc. Softw. Sci. Technol.
– volume: 6563
  start-page: 246
  year: 2011
  end-page: 265
  ident: bib0025
  article-title: Subjective-C: bringing context to mobile platform programming
  publication-title: Proceedings of the International Conference on Software Language Engineering
– volume: 14
  start-page: 3307
  year: 2008
  end-page: 3332
  ident: bib0024
  article-title: Context-oriented programming with the ambient object system
  publication-title: J. Univers. Comput. Sci.
– volume: 18
  start-page: 2
  year: 2003
  end-page: 3
  ident: bib0058
  article-title: Ambient intelligence
  publication-title: IEEE Intell. Syst.
– year: 2019
  ident: bib0017
  article-title: Dynamic visualisation of features and contexts for context-oriented programmers
  publication-title: Proceedings of the ACM SIGCHI Symposium on Engineering Interactive Computing Systems, EICS’19
– start-page: 1
  year: 2009
  end-page: 6
  ident: bib0002
  article-title: A comparison of context-oriented programming languages
  publication-title: Proceedings of the International Workshop on Context-Oriented Programming, COP’09
– year: June 2012
  ident: bib0049
  article-title: The Phenomenal Gem: Putting Features As a Service On Rails
– start-page: 59
  year: 2010
  end-page: 68
  ident: bib0021
  article-title: Programming language support to context-aware adaptation: a case-study with Erlang
  publication-title: Proceedings of the International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS’10
– volume: 85
  start-page: 1801
  year: 2012
  end-page: 1817
  ident: bib0054
  article-title: Context-oriented programming: a software engineering perspective
  publication-title: J. Syst. Softw.
– year: 2012
  ident: bib0006
  article-title: Interruptible context-dependent executions: a fresh look at programming contextaware applications
  publication-title: Proceedings of the International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software Proceedings, OnWard’12
– volume: 7
  start-page: 125
  year: 2008
  end-page: 151
  ident: bib0030
  article-title: Context-oriented programming
  publication-title: J. Object Technol.
– start-page: 21
  year: 2012
  end-page: 25
  ident: bib0048
  article-title: Atomic dynamic upgrades using software transactional memory
  publication-title: Proceedings of the International Workshop on Hot Topics in Software Upgrades, HotSWUp’12
– start-page: 130
  year: 2011
  end-page: 135
  ident: bib0009
  article-title: Feature-oriented programming and context-oriented programming: comparing paradigm characteristics by example implementations
  publication-title: Proceedings of the International Conference on Software Engineering Advances, ICSEA’11
– start-page: 95
  year: 2009
  end-page: 98
  ident: bib0064
  article-title: Hotwave: creating adaptive tools with dynamic aspect-oriented programming in java
  publication-title: Proceedings of the Eighth International Conference on Generative Programming and Component Engineering, GPCE’09
– volume: 76
  start-page: 1194
  year: 2011
  end-page: 1209
  ident: bib0043
  article-title: An open implementation for context-oriented layer composition in ContextJS
  publication-title: Sci. Comput. Program.
– volume: 38
  start-page: 29
  year: 2003
  end-page: 36
  ident: bib0012
  article-title: Dynamically scoped functions as the essence of AOP
  publication-title: ACM SIGPLAN Not.
– reference: .
– start-page: 1
  year: 2005
  end-page: 10
  ident: bib0013
  article-title: Language constructs for context-oriented programming: an overview of ContextL
  publication-title: Proceedings of the Dynamic Languages Symposium
– volume: 6144
  start-page: 66
  year: 2010
  end-page: 81
  ident: bib0062
  article-title: Predicated generic functions: enabling contextdependent method dispatch
– volume: 1
  start-page: 3
  year: 2016
  end-page: 40
  ident: bib0036
  article-title: Context-oriented software development with generalized layer activation mechanism
  publication-title: Trans. Modul. Compos.
– volume: 22
  start-page: 147
  year: 1987
  end-page: 155
  ident: bib0044
  article-title: Concepts and experiments in computational reflection
  publication-title: ACM SIGPLAN Not.
– year: 2005
  ident: bib0031
  article-title: An Architectural Blueprint For Autonomic Computing
– start-page: 2
  year: 2015
  ident: bib0008
  article-title: Context slices: lightweight discovery of behavioral adaptations
  publication-title: Proceedings of the Context-Oriented Programming Workshop, COP’15
– year: 2012
  ident: bib0038
  article-title: Engineering Context-Oriented applications. Master's thesis
– volume: 77
  start-page: 152
  year: 2012
  end-page: 173
  ident: bib0027
  article-title: rbFeatures: feature-oriented programming with Ruby
  publication-title: Sci. Comput. Program.
– volume: 1
  start-page: 3
  year: 2016
  ident: 10.1016/j.infsof.2021.106789_bib0036
  article-title: Context-oriented software development with generalized layer activation mechanism
  publication-title: Trans. Modul. Compos.
– volume: 5
  start-page: 4
  issue: 1
  year: 2001
  ident: 10.1016/j.infsof.2021.106789_bib0015
  article-title: Understanding and using context
  publication-title: Pers. Ubiquitous Comput.
  doi: 10.1007/s007790170019
– start-page: 95
  year: 2009
  ident: 10.1016/j.infsof.2021.106789_bib0064
  article-title: Hotwave: creating adaptive tools with dynamic aspect-oriented programming in java
– year: 1991
  ident: 10.1016/j.infsof.2021.106789_bib0039
– volume: 12
  start-page: 1
  issue: 4
  year: 2013
  ident: 10.1016/j.infsof.2021.106789_bib0004
  article-title: Deaclarative layer composition with the jcop programming language
  publication-title: J. Object Technol.
– start-page: 135
  year: 2006
  ident: 10.1016/j.infsof.2021.106789_bib0005
– year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0038
– ident: 10.1016/j.infsof.2021.106789_bib0051
  doi: 10.1002/spe.2107
– volume: 23
  start-page: 62
  issue: 2
  year: 2006
  ident: 10.1016/j.infsof.2021.106789_bib0020
  article-title: Using architecture models for runtime adaptability
  publication-title: IEEE Software
  doi: 10.1109/MS.2006.61
– volume: 14
  start-page: 3307
  issue: 20
  year: 2008
  ident: 10.1016/j.infsof.2021.106789_bib0024
  article-title: Context-oriented programming with the ambient object system
  publication-title: J. Univers. Comput. Sci.
– start-page: 9
  year: 2019
  ident: 10.1016/j.infsof.2021.106789_bib0018
  article-title: Implementation of a feature-based context-oriented programming language
– start-page: 253
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0033
  article-title: EventCJ: a context-oriented programming language with declarative event-based context transition
– start-page: 15
  year: 2000
  ident: 10.1016/j.infsof.2021.106789_bib0007
– volume: 11
  start-page: 215
  issue: 2
  year: 2002
  ident: 10.1016/j.infsof.2021.106789_bib0059
  article-title: Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs
  publication-title: ACM Trans. Softw. Eng. Methodol.
  doi: 10.1145/505145.505148
– volume: 28
  start-page: 272
  issue: 1
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0003
  article-title: Contextj: context-oriented programming with java
  publication-title: J. Jpn. Soc. Softw. Sci. Technol.
– start-page: 1
  year: 2005
  ident: 10.1016/j.infsof.2021.106789_bib0013
  article-title: Language constructs for context-oriented programming: an overview of ContextL
– start-page: 175
  year: 2014
  ident: 10.1016/j.infsof.2021.106789_bib0057
  article-title: Context-aware software approaches: a comparison and an integration proposal
– start-page: 25
  year: 2015
  ident: 10.1016/j.infsof.2021.106789_bib0042
  article-title: Enabling viewbased programming with scroll: using roles and dynamic dispatch for establishing view-based programming
– year: 2005
  ident: 10.1016/j.infsof.2021.106789_bib0031
– start-page: 2
  year: 2013
  ident: 10.1016/j.infsof.2021.106789_bib0034
  article-title: A unified context activation mechanism
– volume: 7
  start-page: 125
  issue: 3
  year: 2008
  ident: 10.1016/j.infsof.2021.106789_bib0030
  article-title: Context-oriented programming
  publication-title: J. Object Technol.
  doi: 10.5381/jot.2008.7.3.a4
– year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0049
– volume: 77
  start-page: 152
  issue: 3
  year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0027
  article-title: rbFeatures: feature-oriented programming with Ruby
  publication-title: Sci. Comput. Program.
  doi: 10.1016/j.scico.2010.12.007
– start-page: 1
  year: 2009
  ident: 10.1016/j.infsof.2021.106789_bib0002
  article-title: A comparison of context-oriented programming languages
– start-page: 191
  year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0053
  article-title: ContextErlang: introducing context-oriented programming in the actor model
– start-page: 2
  year: 2015
  ident: 10.1016/j.infsof.2021.106789_bib0008
  article-title: Context slices: lightweight discovery of behavioral adaptations
– start-page: 1
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0063
  article-title: traits.js: robust object composition and high-integrity objects for ECMAScript 5
– start-page: 50
  year: 2016
  ident: 10.1016/j.infsof.2021.106789_bib0032
  article-title: A library-based approach to context-dependent computation with reactive values: suppressing reactions of contextdependent functions using dynamic binding
– start-page: 21
  year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0048
  article-title: Atomic dynamic upgrades using software transactional memory
– year: 2016
  ident: 10.1016/j.infsof.2021.106789_bib0061
  article-title: A dynamic instance binding mechanism supporting run-time variability of role-based software systems
– start-page: 1
  year: 2020
  ident: 10.1016/j.infsof.2021.106789_bib0041
  article-title: Interfaces for modular reasoning in context-oriented programming
– year: 2015
  ident: 10.1016/j.infsof.2021.106789_bib0035
  article-title: Generalized layer activation mechanism through contexts and subscribers
– volume: 85
  start-page: 1801
  issue: 8
  year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0054
  article-title: Context-oriented programming: a software engineering perspective
  publication-title: J. Syst. Softw.
  doi: 10.1016/j.jss.2012.03.024
– volume: 38
  start-page: 693
  issue: 4
  year: 1999
  ident: 10.1016/j.infsof.2021.106789_bib0065
  article-title: The origins of ubiquitous computing research at PARC in the late 1980s
  publication-title: IBM Syst. J.
  doi: 10.1147/sj.384.0693
– volume: 38
  start-page: 29
  issue: 8
  year: 2003
  ident: 10.1016/j.infsof.2021.106789_bib0012
  article-title: Dynamically scoped functions as the essence of AOP
  publication-title: ACM SIGPLAN Not.
  doi: 10.1145/944579.944587
– volume: 28
  start-page: 331
  issue: 2
  year: 2006
  ident: 10.1016/j.infsof.2021.106789_bib0016
  article-title: Traits: a mechanism for fine-grained reuse
  publication-title: ACM Trans. Program. Lang. Syst.
  doi: 10.1145/1119479.1119483
– start-page: 130
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0009
  article-title: Feature-oriented programming and context-oriented programming: comparing paradigm characteristics by example implementations
– start-page: 7
  year: 2016
  ident: 10.1016/j.infsof.2021.106789_bib0046
  article-title: A context-oriented software architecture
– start-page: 77
  year: 2007
  ident: 10.1016/j.infsof.2021.106789_bib0023
  article-title: Highly dynamic behaviour adaptability through prototypes with subjective multimethods
– start-page: 7
  year: 2015
  ident: 10.1016/j.infsof.2021.106789_bib0045
  article-title: Towards a decoupled context-oriented programming language for the internet of things
– year: 2019
  ident: 10.1016/j.infsof.2021.106789_bib0017
  article-title: Dynamic visualisation of features and contexts for context-oriented programmers
– year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0006
  article-title: Interruptible context-dependent executions: a fresh look at programming contextaware applications
– start-page: 122
  year: 2016
  ident: 10.1016/j.infsof.2021.106789_bib0047
  article-title: Clonal plasticity: a method for decentralized adaptation in multi-agent systems
– volume: 2
  start-page: 181
  issue: 2
  year: 2007
  ident: 10.1016/j.infsof.2021.106789_bib0028
  article-title: A precise model for contextual roles: the programming language objectteams/java
  publication-title: Appl. Ontol.
  doi: 10.3233/APO-2007-033
– year: 2006
  ident: 10.1016/j.infsof.2021.106789_bib0014
  article-title: Introducing mixin layers to support the development of context-aware systems
– start-page: 23
  year: 1984
  ident: 10.1016/j.infsof.2021.106789_bib0060
  article-title: Reflection and semantics in Lisp
– ident: 10.1016/j.infsof.2021.106789_bib0022
– start-page: 16
  year: 2021
  ident: 10.1016/j.infsof.2021.106789_bib0019
  article-title: Towards a framework for analyzing context-oriented programming languages
– year: 2003
  ident: 10.1016/j.infsof.2021.106789_bib0056
  article-title: Generative programming and component engineering
– start-page: 191
  year: 2013
  ident: 10.1016/j.infsof.2021.106789_bib0011
  article-title: Modeling and analyzing self-adaptive systems with context petri nets
– volume: 6563
  start-page: 246
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0025
  article-title: Subjective-C: bringing context to mobile platform programming
– volume: 18
  start-page: 2
  issue: 4
  year: 2003
  ident: 10.1016/j.infsof.2021.106789_bib0058
  article-title: Ambient intelligence
  publication-title: IEEE Intell. Syst.
  doi: 10.1109/MIS.2003.1200718
– start-page: 141
  year: 2002
  ident: 10.1016/j.infsof.2021.106789_bib0050
  article-title: Dynamic weaving for aspect-oriented programming
– start-page: 209
  year: 2013
  ident: 10.1016/j.infsof.2021.106789_bib0026
  article-title: Context traits: dynamic behaviour adaptation through run-time trait recomposition
– volume: 76
  start-page: 1194
  issue: 12
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0043
  article-title: An open implementation for context-oriented layer composition in ContextJS
  publication-title: Sci. Comput. Program.
  doi: 10.1016/j.scico.2010.11.013
– ident: 10.1016/j.infsof.2021.106789_bib0055
  doi: 10.1007/11531142_14
– start-page: 59
  year: 2010
  ident: 10.1016/j.infsof.2021.106789_bib0021
  article-title: Programming language support to context-aware adaptation: a case-study with Erlang
– volume: 22
  start-page: 147
  issue: 12
  year: 1987
  ident: 10.1016/j.infsof.2021.106789_bib0044
  article-title: Concepts and experiments in computational reflection
  publication-title: ACM SIGPLAN Not.
  doi: 10.1145/38807.38821
– start-page: 21
  year: 2011
  ident: 10.1016/j.infsof.2021.106789_bib0066
  article-title: Using first-class contexts to realize dynamic software updates
– ident: 10.1016/j.infsof.2021.106789_bib0040
  doi: 10.1007/BFb0053381
– start-page: 17
  year: 2017
  ident: 10.1016/j.infsof.2021.106789_bib0037
  article-title: Push-based reactive layer activation in contextoriented programming
– volume: 4
  start-page: 14
  issue: 2
  year: 2009
  ident: 10.1016/j.infsof.2021.106789_bib0052
  article-title: Self-adaptive software: landscape and research challenges
  publication-title: ACM Trans. Auton. Adapt. Syst.
  doi: 10.1145/1516533.1516538
– volume: 6144
  start-page: 66
  year: 2010
  ident: 10.1016/j.infsof.2021.106789_bib0062
  article-title: Predicated generic functions: enabling contextdependent method dispatch
– start-page: 396
  year: 2007
  ident: 10.1016/j.infsof.2021.106789_bib0029
  article-title: An introduction to context-oriented programming with contexts
– start-page: 10
  year: 2005
  ident: 10.1016/j.infsof.2021.106789_bib0001
  article-title: abc: the AspectBench compiler for AspectJ
– start-page: 1
  year: 2012
  ident: 10.1016/j.infsof.2021.106789_bib0010
  article-title: Uniting global and local context behavior with context petri nets
SSID ssj0017030
Score 2.3661106
Snippet The context-oriented programming paradigm is designed to enable self-adaptation, or dynamic behavior modification of software systems, in response to changes...
SourceID crossref
elsevier
SourceType Enrichment Source
Index Database
Publisher
StartPage 106789
SubjectTerms Context-oriented programming
Language engineering
Programming language abstractions
Self-adaptive systems
Title Programming language implementations for context-oriented self-adaptive systems
URI https://dx.doi.org/10.1016/j.infsof.2021.106789
Volume 143
WOSCitedRecordID wos000727767300008&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVESC
  databaseName: ScienceDirect database
  customDbUrl:
  eissn: 1873-6025
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0017030
  issn: 0950-5849
  databaseCode: AIEXJ
  dateStart: 19950101
  isFulltext: true
  titleUrlDefault: https://www.sciencedirect.com
  providerName: Elsevier
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1La9wwEBbtppReSp8kfeFDb0XFlm1JPoaQ0mcaaFr2ZrSSBrIk3iXrtqG_vjOWrGyzpS_oxRizsrzzDeOZ8TczjD11RoD3AniTS8AAxQHXzlUc8OVG-WRbDh1vPr1VBwd6Om0O4_zO1TBOQHWdPj9vlv8VaryGYFPp7F_AnW6KF_AcQccjwo7HPwL-MDCuTikHMGYjqRgy8sQD843IhcRSp7h3Qa2OyfFc-RPgxpnlQCdarfUyn49891Tr-Cwk3KH_StSxfiNBv4eat_i2SMo2fJAvkgP_zgf__c3x6XreAUPWRLwKybCNgpiYVcw5-jTBCvpgU7UqucxDfXMyuqE504YBD7mEOUUd-B8wfhfFc-pyp5uLF1aiEX6g7Wg3UQyxVH2VbQlVN3rCtnZf7U9fp-9JZNdC18XweGMR5cD029zr507KmuNxdIvdjBFDthuQvs2u-O4Ouz4WLNxl79cAz0bAs0uAZwhcdhnw7AfAswj4Pfbxxf7R3ksex2Rwi95zz0EoqKVy2sq8qsA11jmwYGqdKyu1KUuJRjivc-Fc431pYFYAzKCAspo1xpX32aRbdH6bZcJaDD9pZoBDz66QRjirjHJyJnNrqmqHlaNcWht7yNMok5N2JAvO2yDNlqTZBmnuMJ5WLUMPld_8Xo0ib6MfGPy7FrXklysf_PPKh-zGhZI_YpP-7LN_zK7ZL_3x6uxJVKfv7jKHvA
linkProvider Elsevier
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Programming+language+implementations+for+context-oriented+self-adaptive+systems&rft.jtitle=Information+and+software+technology&rft.au=Cardozo%2C+Nicol%C3%A1s&rft.au=Mens%2C+Kim&rft.date=2022-03-01&rft.pub=Elsevier+B.V&rft.issn=0950-5849&rft.eissn=1873-6025&rft.volume=143&rft_id=info:doi/10.1016%2Fj.infsof.2021.106789&rft.externalDocID=S0950584921002305
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0950-5849&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0950-5849&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0950-5849&client=summon