Edit me

Towards Elastic Incrementalization for Datalog

The paper Towards Elastic Incrementalization for Datalog has been published in PPDP 2021: 23rd International Symposium on Principles and Practice of Declarative Programming. A recorded talk is available here. The paper describes a framework for elastic incremental Datalog evaluation, allowing for the result of a Datalog program to...

Slides for Lectures and Talks

Please feel free to use our Souffle slides for your lectures and talks. The slides are in PowerPoint format and in pdf format.

An efficient interpreter for Datalog by de-specializing relations

This is the paper An efficient interpreter for Datalog by de-specializing relations. It was published in the PLDI 2021: Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation. The paper describes several optimization approaches to implement an efficient interpreter for Datalog language and presents...

Automatic Index Selection for Inequalities

Sam Arch has extended the existing automatic index selection technique in Soufflé to support indexed inequalities. An Honours thesis can be found here, and the corresponding slides can be found here. The work investigates two competing automatic index selection techniques designed to accelerate rules with inequality constraints. We...

Soufflé 2.0.2 Released

Hello! We have a new open-source release of Soufflé for you. Key features are Fix OSX user library paths (mmcgr) Fix concurrent profling (mmcgr) Fix indirect index use (aeflores) Fix ‘as’ type conversion (darth-tytus) Fix output of hint statistics (azreika) Implement Record/ADT user-defined functors (darth-tytus) Optimise ADT encoding (darth-tytus)...

Soufflé 2.1 Released

Hello! We have a new open-source release of Soufflé for you. Key features are Choice domain (@XiaowenHu96) Proper treatment of escape codes in symbol constants (@lyxell) CSV output has rfc4180 flag for delimiters (@quentin) Fix UDF syntax (@TomasPuverle) Add no_magic/no_inline relational qualifiers (@sharon-wang) Retire $; replace by autoinc() (@b-scholz)...

Soufflé 2.0.0 Released

Hello! We have a new open-source release of Soufflé for you. Key features are Added --legacy flag to allow use of legacy options (darth-tytus) Added --show [...] flag to show various extra bits of information for debugging/optimising (lyndonhenry) Query interface for provenance (yuli6313) Removed MPI...

An Efficient Interpreter for Soufflé

Xiaowen Hu has implemented an efficient interpreter for Soufflé. An Honours thesis can be found here, and the corresponding slides can be found here. The work investigates various techniques to implement a high performance interpreter for Soufflé, so that the performance gap between Soufflé and synthesised C++ Soufflé...

Haskell Interface for Souffle

The list of languages that can interface with Soufflé keeps growing. Haskell, a high level functional programming language, can now also easily interact with Soufflé via the souffle-haskell library. Motivating example To show how easy it is to call Datalog from Haskell, let’s write a program that can...

IntelliJ IDE Plugin

Last year I needed to implemented a larger project with Datalog/Soufflé for my Master’s Thesis. Being an avid user of graphical IDEs, my first reflex was to search for a Datalog plugin for IntelliJ to speed up my development process. After a fruitless search and some futile attempts to use...

RSS Subscribe


See more posts from the News Archive.