Declarative programming: Difference between revisions
Content added Content deleted
m (Syntax, links) |
m (English, shortened wp links) |
||
Line 4: | Line 4: | ||
* Specifications and contracts, in the [[programming language]]s which support separation of specifications and implementations; |
* 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. |
* Many domain-specific languages. |
||
Among the latter, according to the domain: |
Among the latter, according to the domain: |
||
* component interface specifications: [ |
* component interface specifications: [[wp:CORBA|IDL]]; |
||
* correctness proving: [ |
* correctness proving: [[wp:SPARK_%28programming_language%29|SPARK]]; |
||
* database modeling: [ |
* database modeling: [[wp:IDEF|IDEF]]; |
||
* formal grammar parser generation: [ |
* formal grammar parser generation: [[wp:Yacc|yacc]], [[wp:GNU_bison|bison]]; |
||
* logical inference: [[Prolog]]; |
* logical inference: [[Prolog]]; |
||
* pattern matching: [ |
* pattern matching: [[wp:Regex|regex]], [[wp:SNOBOL|SNOBOL]]; |
||
* process automation, modeling, simulation and control: [ |
* 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: [ |
* software modeling: [[wp:Unified_Modeling_Language|UML]]; |
||
* symbolic analysis and computations: [[Mathematica]]. |
* symbolic analysis and computations: [[Mathematica]]. |
Revision as of 20:59, 21 July 2008
Declarative programming is a programming model. See main article imperative programming.
The major areas of declarative programming application are:
- Specifications and contracts, in the programming languages 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: IDL;
- correctness proving: SPARK;
- database modeling: IDEF;
- formal grammar parser generation: yacc, bison;
- logical inference: Prolog;
- pattern matching: regex, SNOBOL;
- process automation, modeling, simulation and control: LabView, Modelica, MatLab/Simulink, Fuzzy Control Language;
- software modeling: UML;
- symbolic analysis and computations: Mathematica.