Thread overview
Common acronyms
Jan 20, 2013
Philippe Sigaud
Jan 20, 2013
Andrej Mitrovic
Jan 20, 2013
Nick Sabalausky
Jan 20, 2013
Philippe Sigaud
Jan 20, 2013
Philippe Sigaud
Jan 21, 2013
Jonathan M Davis
Jan 21, 2013
Philippe Sigaud
Jan 21, 2013
Philippe Sigaud
Jan 21, 2013
Jonathan M Davis
Jan 21, 2013
Philippe Sigaud
January 20, 2013
Today I saw one thread with DSEL and another with SFINAE.
I was wondering, is everyone reading the forums here at ease with the acronyms bandied around?

We (I) could create a wiki page to help somewhat, if only to help newcomers not used to the C/C++-specific terms that are commonly used here. Many people here (if not a majority) are also non-native English speakers and I know that *I* had trouble with some words (NIH was new for me). Maybe people can just google it, but it seems friendlier to have a wiki page.

Yes? No? Could people here give me some ideas?

- RTTI : runtime-time type information (http://en.wikipedia.org/wiki/Run-time_type_information)  <your explanation here>

- SFINAE : Substitution Failure is not an Error (http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error) <your explanation here>

- RAII : Resource Acquisition is Initialization <your explanation here>

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

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

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

January 20, 2013
On 1/20/13, Philippe Sigaud <philippe.sigaud@gmail.com> wrote:
> We (I) could create a wiki page to help somewhat, if only to help newcomers not used to the C/C++-specific terms that are commonly used here.

You could make the following page more visible and link to it from the wiki, and update it with new terms if necessary:

http://dlang.org/glossary.html
January 20, 2013
On Sun, 20 Jan 2013 21:09:55 +0100
"Philippe Sigaud" <philippe.sigaud@gmail.com> wrote:

> Today I saw one thread with DSEL and another with SFINAE.
> I was wondering, is everyone reading the forums here at ease with
> the acronyms bandied around?
> 
> We (I) could create a wiki page to help somewhat, if only to help newcomers not used to the C/C++-specific terms that are commonly used here. Many people here (if not a majority) are also non-native English speakers and I know that *I* had trouble with some words (NIH was new for me). Maybe people can just google it, but it seems friendlier to have a wiki page.
> 
> Yes? No? Could people here give me some ideas?
> 
> - RTTI : runtime-time type information (http://en.wikipedia.org/wiki/Run-time_type_information)  <your explanation here>
> 
> - SFINAE : Substitution Failure is not an Error (http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error) <your explanation here>
> 
> - RAII : Resource Acquisition is Initialization <your explanation here>
> 
> - 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.
> 
> - DSL : Domain-Specific Language. A small sub-language dedicated to a particular domain or problem. Examples are regexes, string formatters (%d, %s, ...).
> 
> - DSEL : Domain-Specific Embedded Language. A DSL used inside a more general programming language. Also known as an internal DSL, as opposed to an external DSL.
> 

CTFE: Compile-Time Function Execution

IFTI: Implicit Function-Template Instantiation

UFCS: Universal Function Call Syntax

AA: Associative Array

ICE: Internal Compiler Error

January 20, 2013
On Sun, Jan 20, 2013 at 9:15 PM, Andrej Mitrovic <andrej.mitrovich@gmail.com> wrote:
> On 1/20/13, Philippe Sigaud <philippe.sigaud@gmail.com> wrote:
>> We (I) could create a wiki page to help somewhat, if only to help newcomers not used to the C/C++-specific terms that are commonly used here.
>
> You could make the following page more visible and link to it from the wiki, and update it with new terms if necessary:
>
> http://dlang.org/glossary.html

Wow, I did not even know this existed.
January 20, 2013
On Sun, Jan 20, 2013 at 9:23 PM, Nick Sabalausky <SeeWebsiteToContactMe@semitwist.com> wrote:
> On Sun, 20 Jan 2013 21:09:55 +0100
> "Philippe Sigaud" <philippe.sigaud@gmail.com> wrote:
>
>> Today I saw one thread with DSEL and another with SFINAE.
>> I was wondering, is everyone reading the forums here at ease with
>> the acronyms bandied around?
>>
>> We (I) could create a wiki page to help somewhat, if only to help newcomers not used to the C/C++-specific terms that are commonly used here. Many people here (if not a majority) are also non-native English speakers and I know that *I* had trouble with some words (NIH was new for me). Maybe people can just google it, but it seems friendlier to have a wiki page.
>>
>> Yes? No? Could people here give me some ideas?
>>
>> - RTTI : runtime-time type information (http://en.wikipedia.org/wiki/Run-time_type_information)  <your explanation here>
>>
>> - SFINAE : Substitution Failure is not an Error (http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error) <your explanation here>
>>
>> - RAII : Resource Acquisition is Initialization <your explanation here>
>>
>> - 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.
>>
>> - DSL : Domain-Specific Language. A small sub-language dedicated to a particular domain or problem. Examples are regexes, string formatters (%d, %s, ...).
>>
>> - DSEL : Domain-Specific Embedded Language. A DSL used inside a more general programming language. Also known as an internal DSL, as opposed to an external DSL.
>>
>
> CTFE: Compile-Time Function Execution
>
> IFTI: Implicit Function-Template Instantiation
>
> UFCS: Universal Function Call Syntax
>
> AA: Associative Array
>
> ICE: Internal Compiler Error
>

These are good and the first three are very D-centric.

I'd add UDA (User-Defined Attributes)


Do you know where I could put this in the wiki? I suggest in the Community part, on the right hand side.
January 21, 2013
On Sunday, January 20, 2013 21:09:55 Philippe Sigaud wrote:
> - 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.

I would point out that NIH syndrome doesn't necessarily have anything to do with languages. It's simply that someone prefers to write everything themself rather than using an existing solution. However, if applied to the D community, because the focus is on the language, that does tend to translate to writing something specifically in D rather than using a pre-existing solution by linking to it with C or whatnot.

The concept of NIH can be an interesting discussion in and of itself though, because there are serious advantages to doing everything yourself, and there are serious advantages to using existing code rather than having to write and maintain it yourself. There's actually a bit of a division among folks where I work on whether it's generally a good idea to use 3rd party solutions or whether it's better to use homegrown solutions. And it's not an easy question.

Regardless, NIH is definitely an acronym that's worth knowing.

- Jonathan M Davis
January 21, 2013
(...)
> Regardless, NIH is definitely an acronym that's worth knowing.

I'll include it in the page, if only because it's used here. I know I wondered 'what does that mean?', the first time I saw it.

RTFM is not used here, I won't put it, for example.
January 21, 2013
So, here:

http://wiki.dlang.org/Commonly-Used_Acronyms
January 21, 2013
On Monday, January 21, 2013 21:33:17 Philippe Sigaud wrote:
> So, here:
> 
> http://wiki.dlang.org/Commonly-Used_Acronyms

I would point out that your definition of AST macros is way too specific. There really isn't a proper definition for AST macros. They're only a vague idea of providing a way to manipulate an AST. People bring them up all the time and talk about what they might be or do, but they don't exist, and it's never been agreed upon as to what they really are.

- Jonathan M Davis
January 21, 2013
On Mon, Jan 21, 2013 at 9:59 PM, Jonathan M Davis <jmdavisProg@gmx.com> wrote:
> On Monday, January 21, 2013 21:33:17 Philippe Sigaud wrote:
>> So, here:
>>
>> http://wiki.dlang.org/Commonly-Used_Acronyms
>
> I would point out that your definition of AST macros is way too specific. There really isn't a proper definition for AST macros. They're only a vague idea of providing a way to manipulate an AST. People bring them up all the time and talk about what they might be or do, but they don't exist, and it's never been agreed upon as to what they really are.

I don't know, the definition is what I aim to add, playing with a D parser right now :) Do you have any other definition to provide?

IMO they are just functions from AST to AST.