Soufflé is a variant of Datalog for tool designers crafting analyses
in Horn clauses.
Soufflé synthesizes a native parallel C++ program from a logic
specification. The Soufflé language is similar to Datalog (but has
terms known as records), and is frequently used as a domain-specific
language for analysis problems.
WARNING:
souffle is INCOMPATIBLE with CCACHE!
That is, if you are using a popular trick for automatic pick-up of
ccache, symlinking ccache -> /usr/local/bin/gcc, your souffle builds
will FAIL. Don't do that.
In your owf slackbuilds, you can set
export PATH="/bin:/sbin:/usr/bin:/usr/sbin:/opt/llvm-opt/bin:$PATH"
Features of Soufflé Efficient translation to parallel C++ of Datalog
programs (CAV'16, CC'16):
1. Efficient interpretation using de-specialization techniques
2. Specialized data structure for relations
with optimal index selection (VLDB'18)
3. Extended semantics of Datalog, e.g., permitting unbounded
recursions with numbers and terms
4. Simple component model for Datalog specifications
5. Recursively defined record types/ADTs (aka. constructors) for
tuples
6. User-defined functors
7. Strongly-typed types for safety
8. Subsumption
9. Aggregation
10. Choice Construct (APLAS'21)
11. Extended I/O system for relations (including SQLITE3 interfaces)
12. C++/SWIG interfaces
13. Provenance/Debugging (TOPLAS'20)
14. Profiling tools
This requires: graphviz
Maintained by: Lockywolf
Keywords: prolog,datalog,ai,development,programming,re
ChangeLog: souffle
Homepage:
https://souffle-lang.github.io/
Download SlackBuild:
souffle.tar.gz
souffle.tar.gz.asc (FAQ)
(the SlackBuild does not include the source)
| Individual Files: |
| README |
| slack-desc |
| souffle.SlackBuild |
| souffle.info |
© 2006-2026 SlackBuilds.org Project. All rights reserved.
Slackware® is a registered trademark of
Patrick Volkerding
Linux® is a registered trademark of
Linus Torvalds