The Choice Construct in the Soufflé LanguageVirtual
Mon 18 Oct 2021 19:35 - 19:50 at Zurich D - Language Design (mirror) Chair(s): Andreea Costea
Datalog has become a popular implementation language for solving large-scale, real world problems, including bug finders, network analysis tools, and disassemblers. These applications express complex behaviour with hundreds of relations and rules that often require a non-deterministic choice for tuples in relations to express worklist algorithms.
This work is an experience report that describes the implementation of a \textit{choice} construct in the Datalog engine Soufflé. With the choice construct we can express worklist algorithms such as spanning trees in a few lines of code. We highlight the differences between rule-based choice as described in prior work, and relation-based choice introduced by this work. We show that a choice construct enables certain worklist algorithms to be computed up to 10k$\times$ faster than having no choice construct.
Mon 18 OctDisplayed time zone: Central Time (US & Canada) change
10:50 - 12:10 | |||
10:50 15mTalk | A Typed Programmatic Interface to Contracts on the BlockchainVirtual Research Papers | ||
11:05 15mTalk | Adaptable Traces for Program ExplanationsVirtual Research Papers Divya Bajaj Oregon State University, Martin Erwig Oregon State University, Danila Fedorin Oregon State University, Kai Gay Oregon State University | ||
11:20 15mTalk | Latent Effects for Reusable Language ComponentsVirtual Research Papers Birthe van den Berg KU Leuven, Casper Bach Poulsen Delft University of Technology, Tom Schrijvers KU Leuven, Nicolas Wu Imperial College London, UK | ||
11:35 15mTalk | The Choice Construct in the Soufflé LanguageVirtual Research Papers Xiaowen Hu The University of Sydney, Joshua Karp The University of Sydney, David Zhao The University of Sydney, Abdul Zreika The University of Sydney, Xi Wu The University of Sydney, Bernhard Scholz University of Sydney | ||
11:50 20mLive Q&A | Q&A and discussionVirtual Research Papers |
18:50 - 20:10 | Language Design (mirror)Research Papers at Zurich D Chair(s): Andreea Costea School of Computing, National University Of Singapore | ||
18:50 15mTalk | A Typed Programmatic Interface to Contracts on the BlockchainVirtual Research Papers | ||
19:05 15mTalk | Adaptable Traces for Program ExplanationsVirtual Research Papers Divya Bajaj Oregon State University, Martin Erwig Oregon State University, Danila Fedorin Oregon State University, Kai Gay Oregon State University | ||
19:20 15mTalk | Latent Effects for Reusable Language ComponentsVirtual Research Papers Birthe van den Berg KU Leuven, Casper Bach Poulsen Delft University of Technology, Tom Schrijvers KU Leuven, Nicolas Wu Imperial College London, UK | ||
19:35 15mTalk | The Choice Construct in the Soufflé LanguageVirtual Research Papers Xiaowen Hu The University of Sydney, Joshua Karp The University of Sydney, David Zhao The University of Sydney, Abdul Zreika The University of Sydney, Xi Wu The University of Sydney, Bernhard Scholz University of Sydney | ||
19:50 20mLive Q&A | Q&A and discussionVirtual Research Papers |