~/talk

Efficient Embedding of Strategic Attribute Grammars via Memoization

Talkat PEPM 2023 · 2023-01-16..01-17· [compilers-and-language-design]
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

Memoizing attribute values inside the zipper eliminates repeated recomputation and yields a practical embedding of attribute grammars combined with strategic term rewriting. Implementation is the Ztrategic library (Rascal/ASCO, plus a Python port) that stores attributes in memoized zippers and adapts strategic combinators. Benchmarks on ASCO (116 constructors) show performance close to Strafunski, remove roughly 100–850 code smells in student projects, and run much faster than Kiama, which times out on larger examples.

AI-written summary · about

  1. 0:00Introduction
  2. 0:26Motivating let expressions
  3. 4:03Strategic combinators
  4. 6:31Strafunski limitations
  5. 7:57Attribute grammars
  6. 10:24Zipper navigation
  7. 13:16Memoization to avoid recomputation
  8. 15:24Full implementation
  9. 17:14Benchmarking tools
  10. 22:17Conclusions and future
  11. 24:22Q&A
~/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.