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 behavior to be dispatched directly on any detected properties of the execution or user context. Since more than a decade, 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 run-time variation in behavior.
The previous editions of this workshop at ECOOP (since 2009) have each attracted around 30 participants. The goal of the 11th Workshop on Context-Oriented Programming is to further establish context orientation as a common thread throughout language design, application development, and system support. In 2019 we also hope to advance this vibrant research domain at ECOOP in the versatile city of London. According to Wikipedia, London is considered to be one of the world’s most important global cities and has been termed the world’s most powerful, most desirable, most influential, most visited, most expensive, innovative, sustainable, most investment friendly, most popular for work, and the most vegetarian friendly city in the world, all depending on the context.
Call for Papers
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.
All papers must be original. Submissions must not have been published previously and must not be simultaneously submitted or under review at any other refereed event or publication. The program committee will evaluate each contributed paper based on its relevance, significance, clarity, and originality.
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 (e.g., optimization, VM support, JIT compilation);
- 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);
- Modularization approaches for COP (e.g., modules, aspects, features, layers, plugins); Guidelines to apply COP (e.g., best practices, idioms, patterns);
- Run-time support for COP (e.g., reflection, dynamic binding);
- Tool support (e.g., design tools, IDEs, debuggers);
- Support for COP at the modeling level;
- Beyond context-oriented behavior adaptation (e.g., UI adaptation, DB adaptation).
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 8 pages. Accepted papers will be published in the ACM Digital Library.
Mon 15 Jul Times are displayed in time zone: Belfast change
13:30 - 15:00
|TinyCORP: A Calculus for Context-Oriented Reactive Programming|
|Implementation of a Feature-Based Context-Oriented Programming Language|
Benoît DuhouxUniversité catholique de Louvain, Belgium, Kim MensUniversité Catholique de Louvain, Belgium, Bruno DumasUniversité de NamurDOI
15:30 - 17:00
|Implementing Babylonian/S by Putting Examples into Contexts: Tracing Instrumentation for Example-based Live Programming as a Use Case for Context-oriented Programming|
Patrick ReinHasso Plattner Institute, Germany, Jens LinckeHasso Plattner Institute, University of Potsdam, Germany, Stefan RamsonHasso Plattner Institute, Germany, Toni MattisUniversity of Potsdam Potsdam, Fabio NiephausHasso Plattner Institute, University of Potsdam, Robert HirschfeldHasso-Plattner-Institut (HPI), GermanyDOI
|Distributed Context Petri Nets|
Jose Daniel Fandiño de la HozUniversidad de los Andes, Juan Sebastián SosaUniversidad de los Andes, Nicolás CardozoUniversidad de los AndesDOI