Declarative programming: Difference between revisions

From Rosetta Code
Content added Content deleted
m (English, shortened wp links)
 
Line 1: Line 1:
[[Category:Programming Paradigms]]'''Declarative programming''' is a programming model. See main article [[imperative programming]].
#REDIRECT [[:Category:Programming paradigm/Declarative]]

The major areas of declarative programming application are:

* Specifications and contracts, in the [[programming language]]s which support separation of specifications and implementations;
* Type declarations and type inference in typed languages;
* Object declarations in [[object-oriented programming]] languages, as well as in typed languages in general;
* Many domain-specific languages.

Among the latter, according to the domain:

* component interface specifications: [[wp:CORBA|IDL]];
* correctness proving: [[wp:SPARK_%28programming_language%29|SPARK]];
* database modeling: [[wp:IDEF|IDEF]];
* formal grammar parser generation: [[wp:Yacc|yacc]], [[wp:GNU_bison|bison]];
* logical inference: [[Prolog]];
* pattern matching: [[wp:Regex|regex]], [[wp:SNOBOL|SNOBOL]];
* process automation, modeling, simulation and control: [[wp:LabView|LabView]], [[wp:Modelica|Modelica]], [[wp:Simulink|MatLab/Simulink]], [[wp:Fuzzy_Control_Language|Fuzzy Control Language]];
* software modeling: [[wp:Unified_Modeling_Language|UML]];
* symbolic analysis and computations: [[Mathematica]].

Latest revision as of 20:23, 17 August 2009