There are only three basic constructs in Prolog: facts, rules, and queries. A collection
of facts and rules is called a knowledge base (or a database) and Prolog programming
is all about writing knowledge bases. That is, Prolog programs simply are knowledge
bases, collections of facts and rules which describe some collection of relationships
that we find interesting. So how do we use a Prolog program? By posing queries. That
is, by asking questions about the information stored in the knowledge base...
This grammar formalism, a high degree of modularity between syntax and semantics. There is a syntax rule compiler (compiling into Prolog) which takes care of the building of analysis structures and the interface to a clearly separated semantic interpretation component dealing with scoping and the construction of logical forms. The whole system can work in either a one-pass mode or a two-pass mode. [n the one-pass mode, logical forms are built directly during parsing through interleaved calls to semantics, added automatically by the rule compiler. ...
PUNDIT, written in Prolog, is a highly modular system consisting of distinct syntactic, semantic and pragmatics components. Each component draws on one or more sets of data, including a lexicon, a broad-coverage grammar of EngLish, semantic verb decompositions, rules mapping between syntactic and semantic constituents, and a domain model. This paper discusses the communication between the syntactic, semantic and pragmatic modules that is necessary for making implicit linguistic information explicit.
Appendix C - Other relational languages, first presents the relational query language Query-by-Example (QBE), which was designed to be used by non-programmers. In QBE, queries look like a collection of tables containing an example of data to be retrieved. The graphical query language of Microsoft Access, which is based on QBE, is presented next, followed by the Datalog language, which has a syntax modeled after the logic-programming language Prolog.