A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output. Programming languages generally consist of instructions for computers. There are many programming languages in existence, and each has at least one implementation, each of which consists of its own set of programming tools. Some programming languages require computation to be specified in an imperative form (i.e., as a sequence of operations to perform) while other languages use the declarative form (i.e. the desired result is specified, not how to achieve it).