~/talk

Synbit: Synthesizing Bidirectional Programs using Unidirectional Sketches

Talkat OOPSLA 2021 · 2021-10-17..10-22
links:none on file
links:none on file
slides:none on file

Synbit synthesizes well behaved bidirectional programs in HOBiT from a unidirectional get plus a few I/O examples by converting get into a partial sketch generation and filling holes with component based, type directed synthesis. It uses simple range analysis to restrict hole shapes, lazy nondeterministic generation to run incomplete programs on demand, and a modular completion that fixes control flow to prune the search. The implemented tool produces many microbenchmarks (including reverse), fails when get and put structures diverge, and builds a 35-line get into a 115-line BX program.

AI-written summary · about

  1. 0:00Introduction
  2. 0:18Bidirectional transformations
  3. 3:02Synthesis
  4. 6:24Contributions
  5. 6:53Overview
  6. 9:13Optimization Techniques
  7. 10:21Benchmarks
  8. 12:23Related Work
  9. 14:00Conclusion
~/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.