Dagstuhl Seminar 22032
Programming Language Processing Cancelled
( Jan 16 – Jan 21, 2022 )
Permalink
Replacement
Organizers
- Michael Pradel (Universität Stuttgart, DE)
- Baishakhi Ray (Columbia University - New York, US)
- Charles Sutton (Google - Mountain View, US)
- Eran Yahav (Technion - Haifa, IL)
Contact
- Andreas Dolzmann (for scientific matters)
- Simone Schilke (for administrative matters)
Program analysis is at the core of many tools that software developers rely on during their daily work. Instead of analyzing programs in the traditional, symbolic reasoning-based way, there is an increasing interest in learning-based program analysis, both by academic researchers and industry practitioners. A learning-based approach is motivated by the huge amounts of available source code and other data, by the undecidability of practically all interesting program analysis questions, and by recent progress in machine learning and natural language processing. We here call the emerging field of learning-based program analysis "programming language processing" (PLP), in analogy to "natural language processing". Current work shows PLP to be effective for a variety of tasks, including code completion, bug detection, type prediction, program synthesis, code summarization, and program repair.
This Dagstuhl Seminar will bring together researchers and practitioners from three communities – software engineering, programming languages, and natural language processing – providing a unique opportunity for cross-fertilization and inter-disciplinary progress. We will discuss machine learning models of code, integrating learning-based and traditional program analysis, and learning from natural language information associated with software. We expect the seminar to lead to a better understanding of the commonalities and differences between natural and programming languages, a set of standardized tasks and datasets, and an understanding of the challenges and opportunities in industry adoption of PLP.
Topics to be discussed (non-exhaustive list):
- Effective models of code
- Techniques for obtaining, cleaning, and preprocessing training data
- Integrating learning-based and traditional program analysis
- Learning from natural language information associated with programs
- Standardized tasks, leaderboards
- Challenges and opportunities in industry adoption
The main purpose of the seminar is to connect the participants and their respective research ideas. Hence, one expected outcome is new collaborations between the participants, in particular across different subfields of computer science that usually interact only sparsely. Another concrete outcome of the seminar could be an article authored by an interested subset of the participants, which summarizes the current state of PLP, open challenges, and a set of specific tasks the community could focus on. The article should neither survey all existing work nor focus on one or two specific technical contributions. Instead, the goal is to provide a forward-looking perspective of PLP to a broader, general computer science audience.

Classification
- Computation and Language
- Programming Languages
- Software Engineering
Keywords
- Machine learning
- program analysis
- programming