A programming language reference is documentation created with the purpose of explaining how a computer programming language operates and how to write valid source code for the language. In general, a programming language reference will cover aspects such as how branching statements work, what scalar types are available and how different operators can be used. The goal of a programming language reference is not necessarily to teach someone how to program in a given language, but to provide an authoritative source to clarify technical questions. Unlike a programming language specification, which can be a very precise document that traces minute details of the internal implementation of the language, a programming language reference attempts to answer questions more broadly and practically, from a programming point of view instead of a technical interface perspective.
When a computer language is developed and evolves over time, many language developers maintain a programming language reference. The reference usually attempts to explain the different aspects of how the programming language works with specificity, without delving too deeply into details that are not required for general-purpose programming. The document is not a tutorial or learning guide, however, and the provided descriptions explain only how different operators and features can be used, and the proper syntax that a programmer must employ.
The exact type of information that a programming language reference covers can include nearly all basic aspects of a computer language. This can mean all basic operators, such as addition and subtraction signs, as well as the basic structure that a source code file must follow so it can be interpreted by the language compiler. Other information that a programming language reference can cover is how logical branching — such as if-then-else statements — work, and the limits and names of supported scalar types such as integers. In lower-level languages, namespace features and memory management also might be covered.
In some instances, depending on the complexity or size of a programming language, the programming language reference can be hundreds or thousands of pages long. The reference can be sold as a book or series of books, or it can be made available as a digital file or download. Some computer programming languages have official websites on the Internet where the language reference is constantly updated and maintained as the language progresses. Occasionally, the only reference documents that are produced are made by independent technical writers who are unaffiliated with the language developers.