opam-version: "2.0"
maintainer: "simon.cruanes.2007@m4x.org"
authors: "Simon Cruanes <simon.cruanes@inria.fr>"
homepage: "https://github.com/c-cube/datalog"
bug-reports: "https://github.com/c-cube/datalog/issues"
license: "BSD-2-Clause"
doc: "http://cedeela.fr/~simon/software/datalog/index.html"
tags: ["datalog" "relational" "query" "prolog"]
dev-repo: "git://github.com/c-cube/datalog"
build: ["./configure" "--bindir" bin "--docdir" "%{doc}%/datalog/"]
install: [
  [make "all" "install_file" "doc" "man"]
  [make "install"]
]
remove: ["ocamlfind" "remove" "datalog"]
depends: [
  "ocaml" {>= "4.00.1" & < "4.06.0"}
  "ocamlfind"
  "ocamlbuild" {build}
  "num"
]
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.2.tar.gz"
  checksum: "md5=d3165be0b6946d860904b708cc44bcde"
}
