HiLog
A higher-order logic programming language.
An extension of normal
logic programming where predicate symbols may be variable or structured.
This allows
unification to be performed on the predicate symbols themselves in addition to their arguments.
(ftp://sbcs.sunysb.edu/SB-hilog).
["HiLog as a Platform for Database Languages (Or Why Predicate Calculus is Not Enough)", W. Chen et al, Stony Brook, 2nd Intl Workshop on Database Prog Langs, Morgan Kaufmann, 1989].