Declarative Programming Language
Jump to navigation
Jump to search
A Declarative Programming Language is a programming language that can express statements independently of the order of evaluation.
- Context:
- It can be a Logic Programming Language.
- It can be a Functional Programming Language.
- Example(s):
- Counter-Example(s):
- See: Data Manipulation Language, SQL Language.
References
2009
- (Wikipedia, 2009) ⇒ http://en.wikipedia.org/wiki/Declarative_programming
- In computer science, declarative programming is a programming paradigm that expresses the logic of a computation without describing its control flow. [1] Many languages applying this style attempt to minimize or eliminate side effects by describing what the program should accomplish, rather than describing how to go about accomplishing it. [2] This is in contrast from imperative programming, which requires a detailed description of the algorithm to be run.
- Declarative programming often considers programs as theories of a formal logic, and computations as deductions in that logic space. Declarative programming has become of particular interest recently, as it may greatly simplify writing parallel programs [1].
- Common declarative languages include those of regular expressions, logic programming and functional programming.
- (Wikipedia, 2009) ⇒ http://en.wikipedia.org/wiki/Logic_programming
- Logic programming is, in its broadest sense, the use of mathematical logic for computer programming. In this view of logic programming, which can be traced at least as far back as John McCarthy's [1958] advice-taker proposal, logic is used as a purely declarative representation language, and a theorem-prover or model-generator is used as the problem-solver. The problem-solving task is split between the programmer, who is responsible only for ensuring the truth of programs expressed in logical form, and the theorem-prover or model-generator, which is responsible for solving problems efficiently.
- However, logic programming, in the narrower sense in which it is more commonly understood, is the use of logic as both a declarative and procedural representation language.