We present an approach to integrating state-of-art bottom-up logic programming within the Rust ecosystem, demonstrating it with Ascent, an extension of Datalog that performs well against comparable systems. Rust’s powerful macro system permits Ascent to be compiled uniformly with the Rust code it’s embedded in and to interoperate with arbitrary user-defined components written in Rust, addressing a challenge in real-world use of logic programming languages: the fact that logical programs are parts of bigger software systems and need to interoperate with other components written in imperative programming languages. By leveraging Rust’s trait system we are able to extend Datalog semantics with non-powerset lattices, much like Flix, and with user-defined data types much like Formulog and Souffle. We use our language to re-implement the Rust borrow checker, an important static analysis required by the Rust compiler. We evaluate our performance against Datafrog, Flix, and Soufflé using the borrow checker and a variety of benchmarks, observing comparable performance to Datafrog and Soufflé, and speedups of around two orders of magnitude compared to Flix.
Tue 5 AprDisplayed time zone: Eastern Time (US & Canada) change
12:50 - 13:50 | Session 2: Compiler TheoryCC Research Papers at CC Virtual Room Chair(s): EunJung (EJ) Park Qualcomm, USA | ||
12:50 15mPaper | Graph Transformations for Register-Pressure-Aware Instruction Scheduling CC Research Papers Ghassan Shobaki California State University, Sacramento, Justin Bassett California State University Sacramento, Mark Heffernan Google, Austin Kerbow AMD DOI | ||
13:05 15mPaper | Caviar: An E-Graph Based TRS for Automatic Code Optimization CC Research Papers Smail Kourta New York University Abu Dhabi, Adel Abderahmane NAMANI , Fatima Benbouzid-Si Tayeb École nationale supérieure d'informatique, Kim Hazelwood Facebook, Chris Cummins Facebook, Hugh Leather Facebook, Riyadh Baghdadi NYU Abu Dhabi DOI | ||
13:20 15mPaper | On the Computation of Interprocedural Weak Control Closure CC Research Papers DOI | ||
13:35 15mPaper | Seamless Deductive Inference via Macros CC Research Papers Arash Sahebolamri , Thomas Gilray University of Alabama at Birmingham, Kristopher Micinski Syracuse University DOI |