Four Concepts in Programming Language Description

  1. Syntax - The structure and composition of allowable phrases and sentences of the language.
  2. Semantics - Meaning of the syntactic elements. We may think of providing syntactic elements as input to a semantic function which in turn provides some representation of the meaning of the elements as output.
  3. Pragmatics - referring to practical aspects of how constructs and features of a language may be used to achieve various objectives.
  4. Metalanguage - A language in which a subject language is being described.

BNF