English

JSKETCH: Sketching for Java

Programming Languages 2015-07-15 v1

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

R2 v1 2026-06-22T10:11:00.566Z