<language> Any relational language
or functional language
. These kinds of programming language
describe relationships between variables in terms of functions or inference rules, and the language executor (interpreter
) applies some fixed algorithm
to these relations to produce a result.
Declarative languages contrast with imperative languages which specify explicit manipulation of the computer's internal state; or procedural languages which specify an explicit sequence of steps to follow.
The most common examples of declarative languages are logic programming
languages such as Prolog
and functional languages like Haskell
See also production system