Difference between revisions of "Commonly-Used Acronyms"

From D Wiki
Jump to: navigation, search
(D acronyms and abbreviations)
 
Line 3: Line 3:
 
Here is a small list of the usual ones:
 
Here is a small list of the usual ones:
  
- AA: [http://dlang.org/hash-map.html Associative Arrays].
+
* AA: [http://dlang.org/hash-map.html Associative Arrays].
  
- AST: Abstract Syntax Trees. Trees resulting from parsing.
+
* 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].
+
* 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.
+
* 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.
+
* 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, ...).
+
* 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.
+
* 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:
+
* 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.
+
* 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: [http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization Resource Acquisition is Initialization].
+
* RAII: [http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization Resource Acquisition is Initialization].
  
- RTTI: [http://en.wikipedia.org/wiki/Run-time_type_information runtime-time type information]
+
* RTTI: [http://en.wikipedia.org/wiki/Run-time_type_information runtime-time type information]
  
- SFINAE: [http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error Substitution Failure is not an Error]
+
* SFINAE: [http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error Substitution Failure is not an Error]
  
- UDA: User-Defined Attributes. See [http://dlang.org/attribute.html here].
+
* UDA: User-Defined Attributes. See [http://dlang.org/attribute.html 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.
+
* 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: [http://dlang.org/glossary.html the Glossary].
 
See also: [http://dlang.org/glossary.html the Glossary].

Revision as of 20:32, 21 January 2013

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

Here is a small list of the usual ones:

  • 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.
  • 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.