Make.TermA Datalog term is either a Variable.t or a constant.
val make_variable : string -> tmake_variable id returns a new variable term with identifier id.
val is_variable : t -> boolis_variable term returns true if term is a variable.
val is_constant : t -> boolis_constant term returns true if term is a constant.
map f g term applies f on term if it is a variable or g if it is a constant.
val parser : t Angstrom.tparser reads a term.
val pp : t Fmt.tpp term pretty printer.