[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3464970.3468414acmconferencesArticle/Chapter ViewAbstractPublication PagesecoopConference Proceedingsconference-collections
research-article

Towards a framework for analyzing context-oriented programming languages

Published: 11 July 2021 Publication History

Abstract

Context-aware systems keep on emerging in all of our daily activities. To cope with this new situation, programming languages were extended to support the notion of context. Although context-oriented programming languages exist for over 15 years, they were tested for their suitability in developing context-aware systems only to a limited extent. In this paper, we propose a framework for analyzing context-oriented languages from that viewpoint. In this framework, we refer to context definition and activation, reasoning capabilities, process aspects of how to work with the suggested extension, and pragmatic considerations. To demonstrate the use of the framework, we applied it to a relatively new context-oriented programming paradigm, namely context-oriented behavioral programming. The proposed framework can support users of context-oriented programming languages in deciding on the most fitted language for their purpose. Developers of context-oriented programming languages can also use the framework to improve such languages and their supporting tools.

References

[1]
Giora Alexandron, Michal Armoni, Michal Gordon, and David Harel. 2014. Scenario-based Programming, Usability-oriented Perception. ACM Transactions on Computing Education (TOCE), 14, 3 (2014), 1–23.
[2]
Malte Appeltauer, Robert Hirschfeld, Michael Haupt, Jens Lincke, and Michael Perscheid. 2009. A Comparison of Context-Oriented Programming Languages. In COP ’09. ACM. isbn:9781605585383 https://doi.org/10.1145/1562112.1562118
[3]
Adiel Ashrov, Michal Gordon, Assaf Marron, Arnon Sturm, and Gera Weiss. 2017. Structured Behavioral Programming Idioms. In Enterprise, Business-Process and Information Systems Modeling. Springer, 319–333. https://doi.org/10.1007/978-3-319-59466-8_20
[4]
Michael Bar-Sinai. 2020. Extending Behavioral Programming for Model-Driven Engineering. Ben-Gurion University of the Negev, Israel.
[5]
Michael Bar-Sinai, Achiya Elyasaf, Aviran Sadon, and Gera Weiss. 2019. A Scenario Based On-Board Software and Testing Environment for Satellites. In 59th Israel Annual Conference on Aerospace Sciences, IACAS 2019. 2, 1407–1419. isbn:978-1-5108-8278-2
[6]
Nathalie Bricon-Souf and Conrad R. Newman. 2007. Context awareness in health care: A review. International Journal of Medical Informatics, 76, 1 (2007), 2–12. issn:1386-5056 https://doi.org/10.1016/j.ijmedinf.2006.01.003
[7]
Pascal Costanza and Theo D’Hondt. 2008. Feature Descriptions for Context-oriented Programming. In Software Product Lines, 12th International Conference, SPLC 2008, Limerick, Ireland, September 8-12, 2008, Proceedings. Second Volume (Workshops), Steffen Thiel and Klaus Pohl (Eds.). Lero Int. Science Centre, University of Limerick, Ireland, 9–14.
[8]
Werner Damm and David Harel. 2001. LSCs: Breathing Life into Message Sequence Charts. Formal Methods in System Design, 19, 1 (2001), 45–80. issn:1572-8102 https://doi.org/10.1023/A:1011227529550
[9]
Benoît Duhoux, Kim Mens, and Bruno Dumas. 2018. Feature Visualiser: an Inspection Tool for Context-Oriented Programmers. In Proceedings of the 10th International Workshop on Context-Oriented Programming: Advanced Modularity for Run-time Composition, COP@ECOOP 2018, Amsterdam, Netherlands, July 16, 2018. ACM, 15–22. https://doi.org/10.1145/3242921.3242924
[10]
Achiya Elyasaf. 2021. Context-Oriented Behavioral Programming. Information and Software Technology, 133 (2021), may, 106504. issn:0950-5849 https://doi.org/10.1016/j.infsof.2020.106504
[11]
Achiya Elyasaf, David Harel, Assaf Marron, and Gera Weiss. 2018. Towards Integration of Context-Based and Scenario-Based Development. 10748 LNCS, Springer, Cham. isbn:978-3-319-74729-3 https://doi.org/10.1007/978-3-319-74730-9_21
[12]
Achiya Elyasaf, Assaf Marron, Arnon Sturm, and Gera Weiss. 2018. A Context-Based Behavioral Language for IoT. In CEUR Workshop Proceedings, Regina Hebig and Thorsten Berger (Ed.). 2245, CEUR-WS.org, Copenhagen, Denmark. 485–494. http://ceur-ws.org/Vol-2245
[13]
Achiya Elyasaf, Aviran Sadon, Gera Weiss, and Tom Yaacov. 2019. Using Behavioral Programming with Solver, Context, and Deep Reinforcement Learning for Playing a Simplified RoboCup-Type Game. In 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). IEEE, 243–251. https://doi.org/10.1109/models-c.2019.00039
[14]
David Harel and Michal Gordon-Kiwkowitz. 2009. On Teaching Visual Formalisms. IEEE Software, 26, 3 (2009), may, 87–95. https://doi.org/10.1109/MS.2009.76
[15]
D. Harel and G. Katz. 2014. Scaling-Up Behavioral Programming: Steps from Basic Principles to Application Architectures. In Proc. 4th SPLASH Workshop on Programming based on Actors, Agents and Decentralized Control (AGERE!). 95–108.
[16]
David Harel, Assaf Marron, and Gera Weiss. 2010. Programming Coordinated Behavior in Java. In ECOOP 2010 – Object-Oriented Programming. Springer Berlin Heidelberg, 250–274. isbn:978-3-642-14107-2 issn:0302-9743 https://doi.org/10.1007/978-3-642-14107-2_12
[17]
Robert Hirschfeld, Pascal Costanza, and Oscar Marius Nierstrasz. 2008. Context-oriented programming. Journal of Object technology, 7, 3 (2008), 125–151.
[18]
Hiroaki Inoue, Atsushi Igarashi, Malte Appeltauer, and Robert Hirschfeld. 2014. Towards Type-Safe JCop: A Type System for Layer Inheritance and First-Class Layers. In COP. ACM. isbn:9781450328616 https://doi.org/10.1145/2637066.2637073
[19]
Bonface Ngari Ireri, Ruth Diko Wario, and Irene Mukiri Mwingirwa. 2018. Choosing and Adapting a Mobile Learning Model for Teacher Education. In Handbook of Research on Digital Content, Mobile Learning, and Technology Integration Models in Teacher Education. IGI Global, 132–148. https://doi.org/10.4018/978-1-5225-7918-2.ch009
[20]
Tobias Pape, Tim Felgentreff, and Robert Hirschfeld. 2016. Optimizing Sideways Composition: Fast Context-Oriented Programming in ContextPyPy. In COP. ACM, 13–20. https://doi.org/10.1145/2951965.2951967
[21]
Carlos Ramos, Goreti Marreiros, and Ricardo Santos. 2011. A survey on the use of emotions, mood, and personality in ambient intelligence and smart environments. In Handbook of Research on Ambient Intelligence and Smart Environments: Trends and Perspectives. IGI Global, 88–107.
[22]
Patrick Rein, Stefan Ramson, Jens Lincke, Tim Felgentreff, and Robert Hirschfeld. 2017. Group-Based Behavior Adaptation Mechanisms in Object-oriented Systems. IEEE Software, 34, 6 (2017), nov, 78–82. https://doi.org/10.1109/MS.2017.4121224
[23]
Guido Salvaneschi, Carlo Ghezzi, and Matteo Pradella. 2012. Context-Oriented Programming: A Software Engineering Perspective. Journal of Systems and Software, 85 (2012), 1801–1817. issn:0164-1212 https://doi.org/10.1016/j.jss.2012.03.024
[24]
Guido Salvaneschi, Carlo Ghezzi, and Matteo Pradella. 2012. ContextErlang: Introducing Context-Oriented Programming in the Actor Model. In Proceedings of the 11th annual international conference on Aspect-oriented Software Development. ACM Press, 191–202. https://doi.org/10.1145/2162049.2162072
[25]
Arnon Sturm and Onn Shehory. 2003. A Framework for Evaluating Agent-Oriented Methodologies. In AOIS. 3030, Springer, 94–109. https://doi.org/10.1007/978-3-540-25943-5_7

Cited By

View all

Index Terms

  1. Towards a framework for analyzing context-oriented programming languages

      Recommendations

      Comments

      Please enable JavaScript to view thecomments powered by Disqus.

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      COP '21: Proceedings of the 13th ACM International Workshop on Context-Oriented Programming and Advanced Modularity
      July 2021
      23 pages
      ISBN:9781450385428
      DOI:10.1145/3464970
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 11 July 2021

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. Comparison
      2. Context-Oriented Programming
      3. Evaluation

      Qualifiers

      • Research-article

      Conference

      ISSTA '21
      Sponsor:

      Acceptance Rates

      Overall Acceptance Rate 17 of 25 submissions, 68%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)6
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 11 Dec 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2023)Transparent Actor Model2023 IEEE/ACM 11th International Conference on Formal Methods in Software Engineering (FormaliSE)10.1109/FormaliSE58978.2023.00018(97-107)Online publication date: May-2023
      • (2023)A framework for analyzing context-oriented programming languagesJournal of Systems and Software10.1016/j.jss.2023.111614198:COnline publication date: 1-Apr-2023
      • (2022)Programming language implementations for context-oriented self-adaptive systemsInformation and Software Technology10.1016/j.infsof.2021.106789143:COnline publication date: 1-Mar-2022
      • (undefined)A Framework for Analyzing Context-Oriented Programming LanguagesSSRN Electronic Journal10.2139/ssrn.4162440

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media