Package: wnpp Severity: wishlist Owner: Konstantin Vorobyov <k.a.vorob...@gmail.com>
* Package name : souffle Version : 1.0.0 Upstream Author : Konstantin Vorobyov <k.a.vorob...@gmail.com> * URL : http://souffle-lang.github.io/ * License : (UPL) Programming Lang: (C++) Description : a translator of declarative Datalog programs into the C++ programming language Souffle is a translator of declarative Datalog programs into the C++ language. Souffle is used as a domain-specific language for static program analysis, over large code bases with millions of lines of code. Souffle aims at producing high-performance C++ code that can be compiled with the native compiler on the target machine. Features of Souffle: - 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 Souffle is not a dependency for another package but a standalone tools which consumes specification written in Datalog, translates it into a C++ program and generates an executable using a G++ compiler. More information about Souffle including its relevance, use cases and the community around Souffle can be found at the https://github.com/souffle- lang/souffle/wiki. There exists a several tools capable of executing Datalog programs. Some of the most significant efforts are muZ, bddbddb and LogicBlox. However muZ and bddbddb have performance issues when computing large Datalog programs, while LogicBlox has licensing restrictions and not free software. To the best of our knowledge no datalog translator is a part of Debian yet. Souffle is developed and maintained by a group of researchers and developers who use the software in their research or were a part of the Souffle project at one point or another. The core of this group is a part of the School of the Information Technologies at the University of Sydney.