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