WG211/M15Ostermann
From WG 2.11
Variability-Aware Programming by Klaus Ostermann
I will present a library for variability-aware programming, that is, a library to support programs that deal with variability described by logical (propositional) formulas. The library's key abstraction is a pair of functions, "reflect" and "reify", that turn a variable program into an ordinary program and vice versa. I argue that a library like this will be useful to implement variability-aware algorithms, such as type checkers or evaluators for software product lines. The library is written in Racket and uses delimited continuations to reflect over the monadic effects of the variability monad.