Markup Language
A markup language is a system for annotating a document in a way that is visually distinguishable from the content of the document. These annotations are only used to format the text in that document to describe how it should be displayed as the annotations will not be displayed with the formatted text. There are three main types of markup languages:
- Presentational markup: This kind of markup is traditionally used by word-processing systems and normally uses binary code embedded within the document to format the text. This kind of markup is usually hidden from the human users, including the authors and editors.
- Procedural markup:
With procedural, markup is embedded in text which provides instructions for
programs that process the document to format the text a specific way. Some
well known examples of a procedural markup include:
TeX
andPostScript
. It is expected that a processor program will run through the text from beginning to end, following the instructions as they are encountered. Documents with procedural markup often are edited with the markup visible and directly edited by the author. - Descriptive markup:
With descriptive markup, markup is specifically used to label parts of the
document for what they are. Well-known systems that provide such labels are
LaTeX
, HTML, and XML. The objective is to decouple the structure of the document from any particular treatment or rendition of it.
So as you can see there are many forms of markup languages and many languages for each form. Markup languages are often used to write up documentation associated with code so it is good for a programmer to know at least one or more markup languages.
The most popular and commonly used markup language for documenting code is markdown, however I am a big fan of org which GitHub also supports for writing up documentation.
Here is a list of some of the markup languages I have covered: