Blogs (28) >>
ECOOP 2016
Sun 17 - Fri 22 July 2016 Rome, Italy
Thu 21 Jul 2016 10:30 - 10:55 at Auditorium Loyola - Session 4 Chair(s): Sebastian Erdweg

Variation is ubiquitous in software. Many applications can benefit from making this variation explicit, then manipulating and computing with it directly—a technique we call “variational programming”. This idea has been independently discovered in several application domains, such as efficiently analyzing and verifying software product lines, combining bounded and symbolic model-checking, and computing with alternative privacy profiles. Although these domains share similar core problems, and there are also many similarities in the solutions, there is no dedicated programming language support for variational programming. This makes the various implementations tedious, prone to errors, hard to maintain and reuse, and difficult to compare. In this paper we present a calculus that forms the basis of a programming language with explicit support for representing, manipulating, and computing with variation in programs and data. We illustrate how such a language can simplify the implementation of variational programming tasks. We present the syntax and semantics of the core calculus, a sound type system, and a type inference algorithm that produces principal types.

Thu 21 Jul

10:30 - 11:45: Research Track - Session 4 at Auditorium Loyola
Chair(s): Sebastian ErdwegTU Delft
ecoop-2016-papers146908980000010:30 - 10:55
Sheng ChenUniversity of Louisiana at Lafayette, Martin ErwigOregon State University, Eric WalkingshawOregon State University
Link to publication DOI Media Attached
ecoop-2016-papers146909130000010:55 - 11:20
Atsushi OhoriTohoku University, Katsuhiro UenoTohoku University, Tomohiro SasakiTohoku University, Daisuke KikuchiTohoku University and Hitachi Solutions East Japan, Ltd.
Link to publication DOI Pre-print Media Attached
ecoop-2016-papers146909280000011:20 - 11:45
Chenglong WangUniversity of Washington, Jiajun JiangPeking University, Jun LiPeking University, Yingfei XiongPeking University, Xiangyu LuoPeking University, Lu ZhangPeking University, Zhenjiang HuNational Institute of Informatics
Link to publication DOI Pre-print Media Attached