opam-version: "2.0"
maintainer: "simon.cruanes@inria.fr"
authors: ["Simon Cruanes <simon.cruanes@inria.fr>"]
homepage: "https://github.com/c-cube/datalog"
license: "BSD-2-Clause"
doc: ["http://cedeela.fr/~simon/software/datalog/index.html"]
tags: [
  "datalog"
  "relational"
  "query"
  "prolog"
]
build: ["./configure" "--bindir" bin "--docdir" "%{doc}%/datalog/"]
remove: [["ocamlfind" "remove" "datalog"]]
depends: [
  "ocaml" {>= "4.00.1" & < "4.06.0"}
  "ocamlfind"
  "ocamlbuild" {build}
  "num"
]
dev-repo: "git://github.com/c-cube/datalog"
install: [
  [make "all" "install_file" "doc" "man"]
  [make "install"]
]
synopsis: "An in-memory datalog implementation for OCaml."
description: """
It features two main algorithm:
- bottom-up focuses on big sets of rules with small relations, with frequent
  updates of the relations. Therefore, it tries to achieve good behavior in
  presence of incremental modifications of the relations.
- top-down resembles prolog (and allows nested subterms). It handles
  stratified negation and only explores the part of the search space that
  is relevant to a given query."""
flags: light-uninstall
url {
  src: "https://github.com/c-cube/datalog/archive/0.5.1.tar.gz"
  checksum: "md5=73edeb1cc13db48c19cab9a8c50b5c79"
}
