декларативный язык; непроцедурный язык
декларативный (непроцедурный) язык язык программирования, в котором программист описывает факты, касающиеся некоторой области (т.е. формулирует задачу), оставляя интерпретатору языка вывести из них соответствующие заключения Смотри также: nonprocedural language, procedural language, programming language, Prolog
Any relational language or functional language. These kinds of programming language describe relationships between variables in terms of functions or inference rules, and the language executor (interpreter or compiler) applies some fixed algorithm to these relations to produce a result. Declarative languages contrast with imperative languages which specify explicit manipulation of the computer's internal state; or procedural languages which specify an explicit sequence of steps to follow. The most common examples of declarative languages are logic programming languages such as Prolog and functional languages like Haskell. See also production system.