Mon 15 Jul 2019 15:30 - 16:15 at Bouzy - Research Papers Chair(s): David H. Lorenz

By using context-oriented programming (COP), we were able to implement source code instrumentation for example-based live programming in a modular way. Example-based live programming tools provide programmers with feedback on the dynamic program behavior by showing traced values of example invocations of a program. To provide feedback on the runtime behavior, these tools have to trace intermediate, expression-level runtime states during the execution of an example. As the instrumentation is only intended to improve tool support, the default behavior of the system should not be altered. In this paper, we demonstrate how contextoriented programming (COP) can be used to keep the execution of examples separate from the default behavior even in the presence of expression-level behavior variations. We illustrate how our approach can be implemented by implementing Babylonian Programming based on ContextS2 in Squeak/Smalltalk. Based on the implementation, we compare our approach to the approach used in the JavaScript implementation of Babylonian Programming which is based on rewriting complete modules. Further, the described implementation scenario illustrates a use case for expression-level behavior variations in COP.

Mon 15 Jul
Times are displayed in time zone: (GMT+01:00) Greenwich Mean Time : Belfast change

15:30 - 17:00: COP 2019 - Research Papers at Bouzy
Chair(s): David H. LorenzOpen University and Technion IIT
COP-2019-papers15:30 - 16:15
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), Germany
COP-2019-papers16:15 - 17:00
Jose Daniel Fandiño de la HozUniversidad de los Andes, Juan Sebastián SosaUniversidad de los Andes, Nicolás CardozoUniversidad de los Andes