~/talk

Program Synthesis Using Example Propagation

Talkat HATRA 2022 · on Monday, 2022-12-05· [functional-programming]
slides:none on file

A synthesizer called scribe generates expressions for a statically typed functional language with algebraic data types by combining a provided type, input/output examples, optional sketches and a user-supplied context of functions. It uses example propagation (bidirectional evaluation) to push examples through partial programs, prunes infeasible refinements early, normalizes equivalent programs via equivalence reduction, and orders search with function weights. The implementation produces multiple correct implementations (map+concat, replicate, foldr, bind) and shows practical pruning compared to pure enumeration.

AI-written summary · about

  1. 0:00Introduction
  2. 0:37Program synthesis overview
  3. 7:37Scribe synthesizer context
  4. 12:49Scribe features and inputs
  5. 16:46Example propagation
  6. 24:38Q&A session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.