Explore chapters and articles related to this topic
Constraint Programming
Published in Jay Liebowitz, The Handbook of Applied Expert Systems, 2019
Declarative programming has a long history yielding languages such as LISP, Prolog, and other purer functional and logic programming languages, and of course it underpinned the introduction of relational databases and produced SQL which, for all its faults, is today’s most commercially successful declarative programming language.
Periodic distributed delivery routes planning subject to operation uncertainty of vehicles travelling in a convoy
Published in Journal of Information and Telecommunication, 2022
Bocewicz Grzegorz, Nielsen Peter, Smutnicki Czeslaw, Pempera Jaroslaw, Banaszak Zbigniew
The quality of the functioning evaluation of a given system depends decisively on which model is used to assess it. Available model classes are divided into those using an imperative method and those based on a declarative approach. The differences between both kinds of models rest on the fact that imperative approaches focus on how (to solve) while declarative ones focus on what (to describe/specify). Therefore, declaratively expressed models are independent of architectural and software details, and only depend on the conceptualization (paradigm) adopted, and are thus easier to expand and communicate as long as the basic conceptualization is agreed upon. Consequently, due to the nature of the research carried out underlying the semantics of the natural systems being modelled rather than the algorithms that calculate their changing states while covering both the analysis and synthesis of distributed delivery planning, a declarative modelling framework is implemented.
Enhancing parallelism of distributed algorithms with the actor model and a smart data movement technique
Published in International Journal of Parallel, Emergent and Distributed Systems, 2021
Anatoliy Doroshenko, Eugene Tulika, Olena Yatsenko
Declarative programming [2] is one of the approaches aimed at overcoming this difficulty. The main difference of declarative programming is that the developer is focusing on declaring the system behaviour, allowing the declaration support system to find the most efficient technique to interpret and execute declarations. Since the declaration support system is responsible for optimisation, the declarations cannot be universal; they are often developed for solving a specific class of problems. The development of declaration capabilities requires extensive research and implementation but later it allows to optimise and proof solutions without participation from the developer.