First conference tutorial

We ran our first tutorial on the 5th of December, 2016, at APSEC’16. We had 11 participants. The tutorial was run by Bernhard Scholz, Raghavendra K. R., and Alexander Jordan. You find some of the slides here.

Apsec'16 Tutorial

Soufflé 1.0.0 Released

Hello! We have the first open-source release of Soufflé for you. Key features are

  1. Continuous Integration / Travis support for Souffle

  2. Automatic packaging for Debian and MAC OS X platform.

  3. Multiple Header clauses, and disjunctions in bodies of clauses.

  4. BOOST’s C-preprocessor called wave adapted so that MAC OS X port is functional without a GCC installation.

  5. Nullary relations (i.e., relations with no attributes become attributes).

  6. Liberal identifiers in Souffle programs, e.g., A(?x,?y) :- B(?y,?x).

  7. Enable type declarations in Souffle’s components.

  8. Added bitwise and logical functors, and binary, and hexadecimal constants.

  9. Configuration files for Doxygen documentation.

  10. Numerous bug fixes in all parts of the system.

Soufflé is open-source!

Oracle Labs made Soufflé open-source on the 8th of March, 2016. Soufflé is a Datalog-like language that compiles programs to efficient parallel C++ code. Currently, Soufflé is used as a domain-specific language for static program analysis, over large code bases with millions of lines of code.

Features of Soufflé

  • Efficient translation to parallel C++ of Datalog programs
  • Extended semantics of Safe Datalog, e.g., permitting unbounded recursions with numbers
  • Simple component model for Datalog specifications
  • Recursively defined record types for tuples
  • Static type system for attributes