Performant Dynamically Typed E-Graphs in Pure Julia
Fuente:
arXiv
Salvato in:
| Autori principali: | , |
|---|---|
| Natura: | Preprint |
| Pubblicazione: |
2024
|
| Soggetti: | |
| Accesso online: | |
| Tags: |
Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
|
| _version_ | 1866910468863426560 |
|---|---|
| author | Cheli, Alessandro Heim, Niklas |
| author_facet | Cheli, Alessandro Heim, Niklas |
| contents | We introduce the third major version of Metatheory.jl, a Julia library for general-purpose metaprogramming and symbolic computation. Metatheory.jl provides a flexible and performant implementation of e-graphs and Equality Saturation (EqSat) that addresses the two-language problem in high-level compiler optimizations, symbolics and metaprogramming. We present results from our ongoing optimization efforts, comparing the state-of-the-art egg Rust library's performance against our system and show that performant EqSat implementations are possible without sacrificing the comfort of a direct 1-1 integration with a dynamic, high-level and an interactive host programming language. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2404_08751 |
| institution | arXiv |
| publishDate | 2024 |
| record_format | arxiv |
| spellingShingle | Performant Dynamically Typed E-Graphs in Pure Julia Cheli, Alessandro Heim, Niklas Programming Languages Symbolic Computation I.1.3 We introduce the third major version of Metatheory.jl, a Julia library for general-purpose metaprogramming and symbolic computation. Metatheory.jl provides a flexible and performant implementation of e-graphs and Equality Saturation (EqSat) that addresses the two-language problem in high-level compiler optimizations, symbolics and metaprogramming. We present results from our ongoing optimization efforts, comparing the state-of-the-art egg Rust library's performance against our system and show that performant EqSat implementations are possible without sacrificing the comfort of a direct 1-1 integration with a dynamic, high-level and an interactive host programming language. |
| title | Performant Dynamically Typed E-Graphs in Pure Julia |
| topic | Programming Languages Symbolic Computation I.1.3 |
| url | https://arxiv.org/abs/2404.08751 |