Controlled natural languages (CNLs) are subsets of natural languages that are obtained by restricting the grammar and vocabulary in order to reduce or eliminate ambiguity and complexity. Traditionally, controlled languages fall into two major types: those that improve readability for human readers (e.g. non-native speakers),
and those that enable reliable automatic semantic analysis of the language.
The first type of languages (often called "simplified" or "technical" languages), for example ASD Simplified Technical English, Caterpillar Technical English, IBM's Easy English, are used in the industry to increase the quality of technical documentation, and possibly simplify the semi-automatic translation of the documentation. These languages restrict the writer by general rules such as "Keep sentences short", "Avoid the use of pronouns", "Only use dictionary-approved words", and "Use only the active voice".
The second type of languages have a formal syntax and formal semantics, and can be mapped to an existing formal language, such as first-order logic. Thus, those languages can be used as knowledge representation languages, and writing of those languages is supported by fully automatic consistency and redundancy checks, query answering, etc.
Existing controlled natural languages include:
ASD Simplified Technical English
Attempto Controlled English
Aviation English
Basic English
ClearTalk
Common Logic Controlled English
Distributed Language Translation Esperanto
E-Prime
Français fondamental
Gellish Formal English
Interlingua-IL sive Latino sine flexione (Giuseppe Peano)
ModeLang
Newspeak (fictional)
Processable English (PENG)
Seaspeak
Semantics of Business Vocabulary and Business Rules
Special English
IETF has reserved as a BCP 47 variant subtag for simplified versions of languages.