A declarative programming language is a programming language where the programmer specifies the goal or what should be achieved, rather than how a goal should be achieved.