A framework for analyzing context-oriented programming languages

Context-aware systems keep on emerging as an intrinsic part of everyday activities. To cope with such situations, programming languages are extended to support the notion of context. Although context-oriented programming languages exist for over 15 years, they were tested for their suitability for d...

Full description

Saved in:
Bibliographic Details
Published in:The Journal of systems and software Vol. 198; p. 111614
Main Authors: Elyasaf, Achiya, Cardozo, Nicolás, Sturm, Arnon
Format: Journal Article
Language:English
Published: Elsevier Inc 01.04.2023
Subjects:
ISSN:0164-1212, 1873-1228
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Context-aware systems keep on emerging as an intrinsic part of everyday activities. To cope with such situations, programming languages are extended to support the notion of context. Although context-oriented programming languages exist for over 15 years, they were tested for their suitability for developing context-aware systems only to a limited extent. In this paper, we propose a framework for analyzing the suitability of context-oriented languages from a wider viewpoint. Using this framework, we are able to examine context definition and activation, reasoning capabilities, process aspects of how to work with the language, and other pragmatic considerations. To demonstrate the use of the framework, we apply it to analyze three context-oriented programming languages: ServalCJ, Subjective-C, and COBPjs which represent the major Context-Oriented Programming themes. We evaluate the capabilities of each language using the purposed framework. Developers of context-oriented programming languages can use the framework to improve their languages and the associated development and supporting tools. Furthermore, such analysis can support users of context-oriented programming languages in deciding the language that best suits their needs. •Conceptualizing context-oriented development.•A framework for analyzing context-oriented programming languages.•Analysis of three context-oriented programming languages: Subjective-C, ServalCJ, COBPjs.•Findings: Context-oriented programming languages lack testing facilities.•Findings: Further evaluation of context-oriented programming languages is required.
ISSN:0164-1212
1873-1228
DOI:10.1016/j.jss.2023.111614