Write a Blog >>

Welcome to the 9th International Workshop on Context-Oriented Programming

Contextual information plays an ever-increasing role in our information-centric world. Current-day software systems adapt continuously to changing execution and usage contexts, even while running. Unfortunately, mainstream programming languages and development environments still do not support this kind of dynamicity very well, leading developers to implement complex designs to anticipate various dimensions of variability.

Context-Oriented Programming directly supports variability at the programming level, depending on a wide range of dynamic attributes. It enables run-time behaviour to be dispatched directly on any detected properties of the execution or user context. Since more than a decade, several researchers have been working on a variety of notions approaching that idea. Implementations ranging from first prototypes to mature platform extensions used in commercial deployments have illustrated how multidimensional dispatch can be supported effectively to achieve expressive runtime variation in behaviour.

The previous editions of this workshop at ECOOP 2009–2016 have shown to be well-received, each attracting around 30 participants. The goal of the 9th Workshop on Context-Oriented Programming is to further establish context orientation as a common thread throughout language design, application development, and system support.

Flyer

You're viewing the program in a time zone which is different from your device's time zone change time zone

Tue 20 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

09:00 - 10:30
Session 1COP at Vertex WS216
09:00
15m
Day opening
Welcome
COP

09:15
60m
Talk
Keynote on Context-Oriented Language Engineering
COP
S: Tijs van der Storm CWI & University of Groningen
10:15
15m
Other
Discussion
COP

11:00 - 12:30
Session 2COP at Vertex WS216
11:00
30m
Talk
The Declarative Nature of Implicit Layer Activation
COP
Stefan Ramson Hasso Plattner Institute, Potsdam, Jens Lincke Hasso Plattner Institute, Robert Hirschfeld HPI
11:30
30m
Talk
Push-based Reactive Layer Activation in Context-Oriented Programming
COP
Tetsuo Kamina Ritsumeikan University, Tomoyuki Aotani Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology
12:00
30m
Talk
Petri-Net Based Testing Environment for Context-Oriented Programming
COP
Harumi Watanabe Tokai University, Nobuhiko Ogura Tokyo City University
14:00 - 15:30
Session 3COP at Vertex WS216
14:00
30m
Talk
ContextROS: Context-Oriented Programming for the Robot Operating System
COP
Yuta Saeki Kyushu University, Ikuta Tanigawa Kyushu University, Kenji Hisazumi Kyushu University, Akira Fukuda Kyushu University
14:30
30m
Talk
IoT Robot Simulator and Framework for Context-Oriented Programming
COP
Ikuta Tanigawa Kyushu University, Kenji Hisazumi Kyushu University, Nobuhiko Ogura Tokyo City University, Harumi Watanabe Tokai University, Akira Fukuda Kyushu University
15:00
30m
Talk
Peace COrP: Learning to solve conflicts between contexts
COP
Nicolás Cardozo Universidad de los Andes, Ivana Dusparic Trinity College Dublin, Ireland, Jorge H. Castro Universidad de los Andes
Media Attached File Attached
16:00 - 18:00
Session 4COP at Vertex WS216
16:00
2h
Other
Discussion
COP

Call for Papers

Contextual information is playing an ever-increasing role in our information-centric world. Current-day software systems need to adapt continuously to changing execution and usage contexts, even while they are running. Unfortunately, mainstream programming languages and development environments still do not support this level of dynamic adaptivity very well, leading developers to implement complex designs to anticipate various dimensions of variability.

Context-Oriented Programming directly supports variability at the programming level, featuring dedicated programming abstractions enabling programmers to write software applications that adapt dynamically to a wide range of dynamic attributes. It enables run-time behaviour to be dispatched directly on any detected properties of the execution or user context. Since more than a decade, several researchers have been working on a variety of notions approaching that idea.

Implementations ranging from first prototypes to mature platform extensions used in commercial deployments have illustrated how multidimensional dispatch can be supported effectively to achieve expressive runtime variation in behaviour. Our series of International Workshops on Context-Oriented Programming (COP) at ECOOP 2009–2016 have proven to be very successful, each attracting around 30 participants, so continuing this workshop in 2017 in the beautiful city of Barcelona is an obvious next step to advance this vibrant research domain.

Topics

Topics of interest to the workshop include, but are not limited to:

  • Interesting application domains and scenarios for COP;
  • Programming language abstractions for COP (e.g. dynamic scoping, roles, traits, prototype-based extensions);
  • Implementation techniques and mechanisms for COP (e.g. different kinds of dynamic, contextual and multi-dimensional dispatch or pre-dispatch);
  • Implementation issues for COP such as optimisation, VM support, JIT compilation etc.;
  • Implemented use cases, case studies or prototypes of COP;
  • Theoretical foundations for COP (e.g., semantics, type systems);
  • Configuration languages (e.g. feature description interpreters, transformational approaches);
  • Interaction between non-functional programming concerns and COP (e.g. security, persistence, concurrency, distribution);
  • Modularisation approaches for COP (e.g. aspects, modules, layers, plugins);
  • Guidelines to include COP in programs (e.g. best practices, patterns);
  • Runtime support for COP (e.g. reflection, dynamic binding);
  • Tool support (e.g. design tools, IDEs, debuggers);
  • Support for COP at the modelling level;
  • Beyond context-oriented behaviour adaptation (e.g., UI adaptation, DB adaptation).

Submission guidelines

COP invites submissions of high-quality papers reporting original research, or describing innovative contributions to, or experience with context-oriented programming, its implementation, and application. Papers that depart significantly from established ideas and practices are particularly welcome.

Submissions must not have been published previously and must not be under review for any other refereed event or publication. The program committee will evaluate each contributed paper based on its relevance, significance, clarity, and originality.

Papers are to be submitted via EasyChair. They must be written in English, provided as PDF documents, and follow the new ACM Master Article Template with the sigconf option. They should not exceed 6 pages.

Dissemination of Workshop results

Accepted papers will be published in the ACM Digital Library.

This is the 9th edition of the COP workshop.

In the past, context-oriented programming topics have been presented at several international venues:

  • LASSY, the Live Adaptation of Software Systems workshop (co-located with Modularity or Programming),
  • DLS, the Dynamic Languages Symposium (co-located with OOPSLA, ECOOP or SPLASH),
  • the International Conference on Distributed Applications and Interoperable Systems,
  • the International and Interdisciplinary conference on Modelling and Using Context,
  • the Symposium on Software Variability, and
  • the International Conferences on Self-Adaptive and Self-Organising Systems.

As a confirmation of the maturity of the field, papers on Context-oriented programming have also appeared in journals:

  • Elsevier Journal of Systems and Software,
  • ACM Transactions on Autonomous and Adaptive Systems (TAAS), and
  • Elsevier Science of Computer Programming.

In our COP workshop series, we aim at broadening the spectrum of application fields, and the International Workshops on Context-oriented Programming we have been organizing at ECOOP since 2009-2016 have proved to be an essential step in achieving that goal successfully.