Declarative programming

This is an old revision of this page, as edited by 203.169.183.186 (talk) at 04:57, 29 September 2004. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Declarative programming is an approach to computer programming that takes a different approach from traditional imperative programming in Fortran, C++ or Java. Whereas imperative programming gives the computer a list of instructions to execute in a particular order, declarative programming describes to the computer a set of conditions and lets the computer figure out how to satisfy them. Declarative programming includes both functional programming and logic programming.

Declarative programming was also known as Value-oriented programming, but this term has lately fallen out of use.

Declarative languages describe relationships between variables in terms of functions, inference rules, or term-rewriting rules. The language executor (an interpreter or compiler) applies a fixed algorithm to these relations to produce a result.

Declarative programming languages are extensively used in solving artificial intelligence and constraint-satisfaction problems.

Example languages

Representative examples of declarative programming languages include Prolog and Haskell. Other examples include Miranda, and SQL.

Category:Declarative programming languages provides an exhaustive list.

See also