JSKETCH: Sketching for Java
Abstract
Sketch-based synthesis, epitomized by the SKETCH tool, lets developers synthesize software starting from a partial program, also called a sketch or template. This paper presents JSKETCH, a tool that brings sketch-based synthesis to Java. JSKETCH's input is a partial Java program that may include holes, which are unknown constants, expression generators, which range over sets of expressions, and class generators, which are partial classes. JSKETCH then translates the synthesis problem into a SKETCH problem; this translation is complex because SKETCH is not object-oriented. Finally, JSKETCH synthesizes an executable Java program by interpreting the output of SKETCH.
Keywords
Cite
@article{arxiv.1507.03577,
title = {JSKETCH: Sketching for Java},
author = {Jinseong Jeon and Xiaokang Qiu and Jeffrey S. Foster and Armando Solar-Lezama},
journal= {arXiv preprint arXiv:1507.03577},
year = {2015}
}
Comments
This research was supported in part by NSF CCF-1139021, CCF- 1139056, CCF-1161775, and the partnership between UMIACS and the Laboratory for Telecommunication Sciences