Commonly-Used Acronyms

From D Wiki
Revision as of 20:31, 21 January 2013 by PhilippeSigaud (talk | contribs) (D acronyms and abbreviations)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The D mailing lists, D blogs and IRC discussions commonly use acronyms.

Here is a small list of the usual ones:

- AA: Associative Arrays.

- AST: Abstract Syntax Trees. Trees resulting from parsing.

- AST Macros: transformations of an AST. Used while parsing: a macro encodes a transformation from a user-defined syntax to a standard D syntax. [Not implemented in D].

- CTFE: Compile-Time Function Execution/Evaluation. The ability, for the D programming language to evaluate a (standard, runtime) function during compilation, yielding a compile-time constant as a result.

- DSEL : Domain-Specific Embedded Language. A DSL used inside a more general programming language. Also known as an internal DSL.

- DSL: Domain-Specific Language. A small sub-language dedicated to a particular domain or problem. Examples are regexes, string formatters (%d, %s, ...).

- ICE: Internal Compiler Error.

- IFTI: Implicit Function-Template Instantiation. For function templates, the template arguments can be automatically determined by the compiler from the function arguments. For example:

- NIH: Not Invented Here. Also: NIH Syndrome. When a community starts writing its own tools in its own language, (deliberately) ignoring there are more mature tools available elsewhere.

- RAII: Resource Acquisition is Initialization.

- RTTI: runtime-time type information

- SFINAE: Substitution Failure is not an Error

- UDA: User-Defined Attributes. See here.

- UFCS: Universal Function Call Syntax. Allows foo(a,b) to be written as a.foo(b). This allows free functions to be used as members, and function calls to be chained: [0,1,2].map!(a=>a+).array.


See also: the Glossary.