|
In computer science, a declarative programming language is a high-level language that describes a problem rather than defining a solution — it makes use of declarative programming. A declarative programming language says "what", while an imperative programming language says "how". Computer science, or computing science, is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. ...
A high-level programming language is a programming language that is more user-friendly, to some extent platform-independent, and abstract from low-level computer processor operations such as memory accesses. ...
Declarative programming is a term with two distinct meanings, both of which are in current use. ...
In computer science, imperative programming, as opposed to declarative programming, is a programming paradigm that describes computation in terms of a program state and statements that change the program state. ...
Declarative programming languages can be declarative in a variety of ways. Logic programming languages, such as Prolog, are declarative in that the programmer states relationships and asks a question about those relationships — without defining how to compute the answer. Functional programming languages are declarative in that functions relate their output to their input — without defining a strict order to evaluate any operations. Data-oriented programming languages and query languages are declarative in that queries are not given in terms of how to find data but instead give criteria for the desired data (SQL and regular expressions are examples). Logic programming (which might better be called logical programming by analogy with mathematical programming and linear programming) is, in its broadest sense, the use of mathematical logic for computer programming. ...
Prolog is a logic programming language. ...
Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions. ...
Query languages are computer languages used to make queries into databases and information systems. ...
SQL (IPA: or ), commonly expanded as Structured Query Language, is a computer language designed for the retrieval and management of data in relational database management systems, database schema creation and modification, and database object access control management. ...
A regular expression (abbreviated as regexp, regex or regxp) is a string that describes or matches a set of strings, according to certain syntax rules. ...
There are a number of completely declarative languages. Examples include interface description languages (IDLs), which are often declarative, as they specify relationships without specifying computation. Other examples include frame languages, and ontology languages, such as OWL and CycL, which are used to encode knowledge about relationships. An interface description language (or alternately, interface definition language), or IDL for short, is a computer language used to describe a software components interface. ...
Frame language is a metalanguage. ...
In computer science, an ontology is the attempt to formulate an exhaustive and rigorous conceptual schema within a given domain, a typically hierarchical data structure containing all the relevant entities and their relationships and rules (theorems, regulations) within that domain. ...
The Web Ontology Language (OWL) is a language for defining and instantiating Web ontologies. ...
CycL was originally a frame language used by Doug Lenats Cyc Artificial Intelligence project. ...
Purely declarative languages, in general, do not "compute" anything; rather, they specify relationships. These relationships are then commonly used to perform computation. Thus, for example, in an ontology language beased on first-order logic, the predicate isHuman(X) can be used to perform the computation that isHuman(Socrates) is true. Another example is provided by VRML, the virtual reality markup language, a 3D scene description language. In this language, a "rotating" declarative can be used to assert that an object spins. When drawn visually, the object is meant to be drawn as spinning. First-order logic (FOL) is a formal deductive system used by mathematicians, philosophers, linguists, and computer scientists. ...
Look up predicate in Wiktionary, the free dictionary. ...
VRML (Virtual Reality Modeling Language, pronounced vermal or by its initials, originally known as the Virtual Reality Markup Language) is a standard file format for representing 3-dimensional (3D) interactive vector graphics, designed particularly with the World Wide Web in mind. ...
This article is about the simulation technology. ...
The distinctions are never sharp; Prolog can be used to compute explicitly, by use of recursive rules and the cut operator. Functions that aren't purely functional or make use of a monad (by being in CPS or using I/O) do strictly sequence operations. SQL's INSERT and DELETE commands are dependent on sequence. On the other hand, assembly language, the lowest level programming language, may have declarative aspects — static memory allocation and macros, for example. Purely functional is a term in computing used to describe algorithms, data structures or programming languages that exclude destructive modifications (updates). ...
Wikibooks Haskell has a page on the topic of Understanding monads Some functional programming languages make use of monads[1] [2] to structure programs which include operations that must be executed in a specific order. ...
Continuation passing style (CPS) is a term used within functional programming to describe a style of programming wherein functions never return. ...
Energy Input: The energy placed into a reaction. ...
See the terminology section, below, regarding inconsistent use of the terms assembly and assembler. ...
Static memory allocation refers to the process of allocating memory at compile-time before the associated program is executed, unlike dynamic memory allocation or automatic memory allocation where memory is allocated as required at run-time. ...
For other uses, see Macro (disambiguation) A macro in computer science is a rule or pattern that specifies how a certain input sequence (often a sequence of characters) should be mapped to an output sequence (also often a sequence of characters) according to a defined procedure. ...
Examples of declarative programming in action
- Declarative redesign of a pocket calculator (Thimbleby, Harold. "A new calculator and why it is necessary", Middlesex University 1998)
|