2019

Write, Execute, Assess: Program Synthesis with a REPL

Ellis, Kevin, Nye, Maxwell, Pu, Yewen et al.

Understand

We present a neural program synthesis approach integrating components which write, execute, and assess code to navigate the search space of possible programs.

  • We equip the search process with an interpreter or a read-eval-print-loop (REPL), which immediately executes partially written programs, exposing their semantics.
  • The REPL addresses a basic challenge of program synthesis: tiny changes in syntax can lead to huge changes in semantics.
  • We train a pair of models, a policy that proposes the new piece of code to write, and a value function that assesses the prospects of the code written so-far.

Reading the bibliography…