A style of programming that concentrates on ''what'' to do, rather than ''how'' to do it. Contrast with [imperative programming]. Some examples of declarative programming languages: * [Functional programming] languages, like [Haskell], ML, etc. * [Logic programming] languages, like [Prolog]. * Various rule-based languages, such as [CLIPS] are primarily declarative, but are often used in a stateful manner. * Various procedural markup languages, such as '''compose''' ([Multics]) and the [Unix] '''*roff''' family (nroff, troff, etc.)), are imperative. * Various descriptive markup languages, such as [HTML] and [SGML] (from which [XML] was derived) are declarative (ish -- again, this is often not the case in practice). [XSLT] could indeed be called an XML-based, declarative and functional programming language. ---- [[ [Category Concept] ]]