~/talk

Grisette: Symbolic Compilation as a Functional Programming Library

Talkat POPL 2023 · 2023-01-15..01-21
name:Sirui Lu
links:none on file
links:none on file
slides:none on file

Grisette is a Haskell library that compiles programs symbolically by evaluating all paths and merging states into a normal form that avoids pairwise exclusive guards; its ordered-guards representation plus hierarchical, sorted unions shrinks constraint terms and speeds solving — the paper reports about 5-fold smaller constraints and >2× faster solving versus prior tools. It is purely functional, statically typed, supports memoization and monadic integration, uses SBV backends, ships BSD‑3 on GitHub, and demos synthesis (finds x+3).

AI-written summary · about

  1. 0:00Start
  2. 3:50Reusable symbolic compilers
  3. 6:29Reusable symbolic compiler as a library
  4. 7:36Design goals
  5. 8:05An example program
  6. 8:46MEG (Mutually Exclusive Guards)
  7. 9:59Sources of duplications in MEG vs. ORG
  8. 11:56Merging complex types in ORG
  9. 13:38Evaluation settings
  10. 17:47Discussion 1: Stateful programming with Grisette
  11. 19:56A minimal synthesizer
~/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.