~/talk

Performant Dynamically Typed E-Graphs in Pure Julia

Talkat EGRAPHS 2024 · on Monday, 2024-06-24· [compilers-and-language-design]
links:none on file
links:none on file
slides:none on file

Metatheory.jl v3 implements e-graphs and equality saturation entirely in Julia, using a term interface that reads/writes expressions from byte buffers to support dynamic typing and dynamic multiple dispatch. Benchmarks show about 200x faster than the previous release, classical rewriting ~4× faster than Symbolics.jl, and performance that often reaches or exceeds egg (Rust) on standard EqSat workloads. It already supports extracting cost functions, source-to-source pattern macros, IR-level rewrites inside Julia compilers, and active CI benchmark runs on GitHub.

AI-written summary · about

  1. 0:00Meth.jl and team intro
  2. 2:35Why Julia for e-graphs
  3. 4:17Meth.jl features
  4. 6:03Rewrite rules and workflow
  5. 7:48Dynamic typing in Meth.jl
  6. 9:38Julia’s dispatch and types
  7. 11:04Pattern matching in Meth.jl
  8. 12:50Benchmarks and speed
  9. 14:14Two-language problem solved
  10. 15:37Applications in Julia
  11. 17:24Optiflo and FPC optimization
  12. 18:05Future work and ecosystem
  13. 19:30Proof production in Julia
  14. 20:13Feature completeness and hiring
  15. 21:18Q&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.