CONFLANG is a workshop on the design, the theory, the practice and the future evolution of configuration languages.
Build systems, package managers, operating systems, cloud infrastructures, and web services are examples of modern complex software systems that require an extensive and non-trivial configuration in order to make them adapted to each different use-case. To manage the growing complexity that is then offloaded to configurations, the declarative approach has become more and more popular, illustrated for example by the infrastructure-as-code paradigm. This leads configuration to play an important role in critical aspects of software engineering, including security, availability, and maintainability.
However, static text-based configuration alone is falling short of expressivity, and is seldom sufficient. Data cannot be transformed, combined nor shared, resulting at best in boilerplate and duplication of information, or at worst, in data being invalid or inconsistent. Data validation isn’t supported either, and must be handed over to yet another tool down the configuration pipeline, if ever done. Correctly configuring a modern system is hard and failures may have substantial negative consequences.
These are the reasons why we witness the birth of a new generation of languages specialized in generating, validating or enriching static configurations. Some of these languages take a holistic point of a view and provide programmable configurations. Others prefer to specialize in one aspect of configuration, such as validation. These languages lie in a singular domain of the design space, with specific constraints, trade-offs and goals. Thus, because configuration languages operate under very different design constraints than traditional programming languages, because of their practical importance in software engineering and deployment, and because of exciting new developments, we think configuration languages are a worthy area of research.
CONFLANG aims to gather this emerging community in order to engage in fruitful interactions, to share ideas, results, opinions, and experiences on languages for configuration. Correct configuration is an actual industrial problem, and would greatly benefit from existing and ongoing academic research. Dually, this is a space with new challenges to overcome and new directions to explore, which is a great opportunity to confront new ideas with large-scale production systems.
Topics of interest include, but are not limited to:
- Infrastructure and configuration code maintenance and evolution
- Specification learning and mining for configurations
- Infrastructure and Configuration testing and verification
- Infrastructure as Code and configuration repair
- New languages for configuration
- The application of language security and type theory to program configuration
Mon 18 OctDisplayed time zone: Central Time (US & Canada) change
09:00 - 10:20 | LanguagesCONFLANG at Zurich E Chair(s): Nicolas Jeannerod Tweag I/O, Mark Santolucito Barnard College, Columbia University, USA | ||
09:00 5mTalk | A Language for Configuring Security Policies CONFLANG Gilad Bracha NOT_PROVIDED Media Attached | ||
09:05 5mTalk | Provenance of Configuration Programming Language muPuppet CONFLANG Weili Fu University of Freiburg, Germany, Paul Anderson University of Edinburgh, James Cheney University of Edinburgh; Alan Turing Institute Media Attached | ||
09:10 5mTalk | The Pitfalls of Ansible’s Variable and Template Expression Semantics CONFLANG Media Attached | ||
09:15 5mTalk | Typing in Nickel and elsewhere CONFLANG Yann Hamdaoui Tweag Media Attached | ||
09:20 60mLive Q&A | Languages: Q&A and discussion CONFLANG |
10:50 - 12:10 | Configuration managementCONFLANG at Zurich E Chair(s): Jürgen Cito TU Wien and Facebook, Marcel van Lohuizen CUE | ||
10:50 5mTalk | Analyzing Infrastructure as Code to Prevent Intra-update Sniping Vulnerabilities CONFLANG Julien Lepiller Yale University Media Attached | ||
10:55 5mTalk | Continuous Configuration Testing CONFLANG Tianyin Xu University of Illinois at Urbana-Champaign Media Attached | ||
11:00 5mTalk | Intra-update Sniping Vulnerabilities in Smart Contracts CONFLANG Mark Santolucito Barnard College, Columbia University, USA, Shmuel Berman Columbia University, Brennen Yu Columbia University, USA, Stella Lessler Media Attached | ||
11:05 5mTalk | Local Expectation Testing for Terraform CONFLANG | ||
11:10 5mTalk | Scuemata: A Framework for Evolvable, Composable Data Schema CONFLANG Sam Boyer Grafana Labs Media Attached | ||
11:15 55mLive Q&A | Configuration management: Q&A and discussion CONFLANG |
13:50 - 15:10 | |||
13:50 5mExperience report | Case Study: Building and testing programming assignments with Nix CONFLANG Martin Schwaighofer JKU Linz, Austria Media Attached | ||
13:55 5mTalk | Large-Scale Engineering of Configuration with Unification CONFLANG Media Attached | ||
14:00 5mTalk | Six Ways Configuration Systems Fail CONFLANG Daniel Spoonhower Lightstep Media Attached | ||
14:05 65mLive Q&A | Experience report: Q&A and discussion CONFLANG |
15:40 - 17:00 | |||
15:40 80mLive Q&A | Structured discussion: future of configuration languages CONFLANG |
Accepted Papers
Call for Presentations
CONFLANG is a new workshop on the design, the usage and the tooling of configuration languages. CONFLANG aims at uniting language designers, industry practitioners and passionate hobbyists to share knowledge in any form. Topics of interest include, but are not limited to:
- Infrastructure and configuration code maintenance and evolution
- Specification learning and mining for configurations
- Infrastructure and Configuration testing and verification
- Infrastructure as Code and configuration repair
- New languages for configuration
- The application of language security and type theory to program configuration
The committee welcomes proposals for presentations:
- Traditional talks on any theoretical or practical aspect of the usage, the tooling and the design of configuration languages
- Experience and case study talks on the real world usage and deployment of configuration languages
- Explorative talks and/or demos on experimenting with configuration languages and related tools
Venue
While in-person presentations make sharing and interacting easier, please note that remote presentations are also considered due to the current health context.
Submission guidelines
Please submit an abstract (up to 600 words, excluding title, author names, and bibliography) of your proposed talk using the submission link provided below.
- Format: 600 words maximum abstract (estimated between 1 and 1,5 pages) as a PDF, excluding title, author names, and bibliography. Any additional material will be considered at the discretion of the PC.
- URL : https://conflang21.hotcrp.com/