ECOOP 2018
Sun 15 - Sat 21 July 2018 Amsterdam, Netherlands
co-located with ECOOP and ISSTA
Mon 16 Jul 2018 14:00 - 14:30 at Bangkok - Session 2 Chair(s): Tetsuo Kamina, Jens Lincke

Two or more incompatible versions of a library are sometimes needed in one software artifact, which is so-called dependency hell. One likely faces the problem if he or she uses two or more libraries that depend on the same library. We propose a context-oriented programming language VL as a solution to the problem. It treats versions as contexts and allows multiple versions of definitions such as classes, methods, and functions coexist in a binary file, which gets rid of requiring two or more incompatible binaries. We show in this paper a sketch of VL by using an example situation of incompatibility among versions that is simplified from the one found in the ASM bytecode engineering library. We also show a core calculus of VL to discuss type safety in the case where definitions are available only in specific versions, which is a common and important nature of versioned programs.

Mon 16 Jul

14:00 - 15:30: COP - Session 2 at Bangkok
Chair(s): Tetsuo KaminaOita University, Jens LinckeHasso Plattner Institute
COP-2018-papers14:00 - 14:30
Yudai TanabeTokyo Institute of Technology, Tomoyuki AotaniTokyo Institute of Technology, Hidehiko MasuharaTokyo Institute of Technology
COP-2018-papers14:30 - 15:00
Benoît DuhouxUniversité catholique de Louvain, Belgium, Kim MensUniversité Catholique de Louvain, Belgium, Bruno Dumas
COP-2018-papers15:00 - 15:30
Nicolás CardozoUniversidad de los Andes