Compiler for writing DeepDive applications in a Datalog-like language β€” βš οΈπŸš§πŸ›‘ REPO MOVED TO DEEPDIVE πŸ‘‡πŸΏ
Scala Makefile Shell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
project
src/main/scala/org/deepdive/ddlog
test
.gitignore
.gitmodules
.travis.yml
Makefile
README.md
build.sbt
scala.mk

README.md

DeepDiveLog Build Status Coverage Status

A Datalog-like language for writing DeepDive apps.

Building

The following command builds all Scala code under src/.

make

Testing

Interactive Tests

To play with DDlog compiler's command-line interface interactively, use the following script after running make.

test/ddlog

This provides a quick way to see the effects from the command-line after changing the source code as it directly runs the compiled classes under target/ rather than having to assemble a jar every time. After running make at least once, you can solely rely on an IDE such as IntelliJ IDEA to compile individual .scala files and test it with this script.

Automated Tests

The following command runs all tests under test/. Tests are written in BATS.

make test

To run tests selectively, see the long make command produced by:

make test-list

Test Coverage

The following command produces a test coverage report.

make test-coverage

Deploying

Assembling a standalone jar

The following command produces a standalone jar that contains the DDlog compiler.

make ddlog.jar

Running the standalone jar

The following command generates a deepdive.conf for the spouse example in DeepDive's tutorial.

mkdir -p examples/spouse_example
java -jar ddlog.jar compile examples/spouse_example.ddl >examples/spouse_example/deepdive.conf