Skip to main content
Weiter zur Homepage der Europäischen Kommission (öffnet in neuem Fenster)
Deutsch de
CORDIS - Forschungsergebnisse der EU
CORDIS

Exploratory Program Synthesis

Projektbeschreibung

Programmieren mit einem Kopiloten

Softwareentwicklung beginnt oft mit Ungewissheit, da bei der Entwicklung experimentiert wird und die Ziele im Verlauf des Programmierens verfeinert werden. Programmsynthesewerkzeuge, die sich auf präzise Spezifikationen stützen, werden dieser explorativen Realität jedoch nur selten gerecht. In diesem Zusammenhang zielt das Team des ERC-finanzierten Projekts EXPLOSYN darauf ab, diese Lücke zu schließen, indem eine explorative Programmsynthese entwickelt wird: Werkzeuge, die beim Programmieren unterstützen, auch wenn die Details einer Aufgabe noch keine Form angenommen haben. Projektziel ist, durch die Verknüpfung minimaler Spezifikationen mit neuen Interaktionsmodellen und Synthesealgorithmen die Produktivität zu steigern und gleichzeitig die Richtigkeit beizubehalten. Insgesamt zielt die Arbeit von EXPLOSYN darauf ab, Werkzeuge zur Codegenerierung zu einem Routinebestandteil der Softwareentwicklung werden zu lassen, damit Programmierende schneller arbeiten, klarere Entscheidungen treffen und zuverlässigeren Code liefern können.

Ziel

Our goal is to create Program Synthesis that can be used during Exploratory Programming to boost productivity and reliability when programmers write code. Program synthesis generates code for programmers so they can focus on the problem-solving aspects of their work. This often requires programmers to write a specification for the desired code, but this specification may not exist. Many aspects are initially undecided: implementation details, the division into subtasks, and at times even what the result should be. This leads programmers to use Exploratory Programming: refining their understanding of the code by writing the code. User studies we conducted to evaluate previous synthesis tools highlighted the chasm between what programmers know before writing code and the specifications program synthesis needs.

We will develop Exploratory Program Synthesis: tools that can support the programmer even when their initial specification of the task is lacking. Exploratory Program Synthesis will hinge on finding non-disruptive ways for the programmer to use synthesis while still using specifications so that results retain a notion of correctness. This will require a better understanding of both exploratory programming and existing user-centric challenges in program synthesis, and will produce new synthesis interaction models backed by new synthesis algorithms. The conceptual leap is finding ways for programmers to interact with synthesis that are designed for the needs of both programmer and synthesizer by better understanding both, forming an interface between the two that is mutually beneficial.

Exploratory Program Synthesis will revolutionize programming by letting the wealth of synthesis research be integrated into programmers' day-to-day work, allowing programmers to generate code that is attuned to their work trajectory. The algorithms and interaction models developed in this research will significantly improve programmers' ability to write correct code quickly.

Wissenschaftliches Gebiet (EuroSciVoc)

Schlüsselbegriffe

Programm/Programme

Thema/Themen

Finanzierungsplan

HORIZON-ERC - HORIZON ERC Grants

Alle im Rahmen dieses Finanzierungsinstruments finanzierten Projekte anzeigen

Aufforderung zur Vorschlagseinreichung

(öffnet in neuem Fenster) ERC-2023-STG

Alle im Rahmen dieser Aufforderung zur Einreichung von Vorschlägen finanzierten Projekte anzeigen

Gastgebende Einrichtung

TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY
Netto-EU-Beitrag
€ 1 500 000,00
Adresse
SENATE BUILDING TECHNION CITY
32000 Haifa
Israel
Aktivitätstyp
Higher or Secondary Education Establishments
Links
Gesamtkosten
€ 1 500 000,00

Begünstigte (1)