Vi presenterar ramen för Storyboard-programmering, ett nytt syntessystem som är utformat för att hjälpa programmerare att skriva nödvändiga data-strukturmanipuleringar på låg nivå. Målet med detta system är att överbrygga klyftan mellan de "boxar-andarrows" diagram som programmerare ofta använder för att tänka på data-struktur manipulation algoritmer och den låga nivå imperativ kod som implementerar dem. Systemet tar som inmatning en uppsättning partiella input-output exempel, samt en beskrivning av den höga nivå strukturen för den önskade lösningen. Från denna information, är det möjligt att syntetisera låg nivå imperativ implementationer på några minuter. Ramen bygger på ett nytt tillvägagångssätt för att kombinera begränsningsbaserad syntes och abstrakt tolkningsbaserad formanalys. Metoden fungerar genom att kodning av både syntesen och det abstrakta tolkningsproblemet som ett problem med begränsad tillfredsställelse, vars lösning definierar det önskade genomförandet på låg nivå. Vi har använt ramen för att syntetisera flera data-struktur manipulationer med länkade listor och binära sökträd, samt en insättning operation i en och Inverter Graph.
En annan relaterad teknik är Storyboard Programmering REF för lärande data struktur manipulation program från exempel genom att kombinera abstrakt tolkning och form analys.
Synthesizing data structure manipulations from storyboards
{'venue': "ESEC/FSE '11", 'journal': None, 'mag_field_of_study': ['Computer Science']}