Thu 18 Jul 2019 11:10 - 11:30 at Mancy - Domain Specific Languages Chair(s): Sebastian Erdweg

Developing software often requires code changes that are widespread and applied to multiple locations. There are tools for Java that allow developers to specify patterns for program matching and source-to-source transformation. However, to our knowledge, none allows for transforming code based on its control-flow context. We prototype Coccinelle4J, an extension to Coccinelle, which is a program transformation tool designed for widespread changes in C code, in order to work on Java source code. We adapt Coccinelle to be able to apply scripts written in the Semantic Patch Language (SmPL), a language provided by Coccinelle, to Java source files. As a case study, we demonstrate the utility of Coccinelle4J with the task of API migration. We show 6 semantic patches to migrate from deprecated Android API methods on several open source Android projects. We describe how SmPL can be used to express several API migrations and justify several of our design decisions.

Thu 18 Jul
Times are displayed in time zone: Greenwich Mean Time : Belfast change

10:30 - 12:10
Domain Specific LanguagesResearch Papers at Mancy
Chair(s): Sebastian ErdwegJGU Mainz
10:30
20m
Research paper
How to Avoid Making a Billion-Dollar Mistake: Type-Safe Data Plane Programming with SafeP4
Research Papers
Matthias Eichholz, Eric CampbellCornell University, Nate FosterCornell University, Guido SalvaneschiTU Darmstadt, Mira MeziniTU Darmstadt, Germany
DOI Media Attached
10:50
20m
Research paper
Fling—A Fluent API Generator
Research Papers
Yossi GilTechnion—Israel Institute of Technology, Ori RothTechnion
DOI
11:10
20m
Research paper
Semantic Patches for Java Program TransformationExperience Report
Research Papers
Hong Jin KangSchool of Information Systems, Singapore Management University, Ferdian Thung, Julia LawallInria/LIP6, Gilles MullerLIP6-INRIA/UPMC, Lingxiao JiangSingapore Management University, David LoSingapore Management University
DOI Media Attached
11:30
20m
Research paper
Finally, a Polymorphic Linear Algebra LanguagePearl
Research Papers
Amir ShaikhhaUniversity of Oxford, Lionel ParreauxEPFL
DOI
11:50
20m
Research paper
NumLin: Linear Types for Linear Algebra
Research Papers
Dhruv MakwanaUnaffiliated, Neel KrishnaswamiComputer Laboratory, University of Cambridge
DOI Pre-print Media Attached File Attached