new DIP47: Outlining member functions of aggregates

Ramon spam at thanks.no
Sat Sep 7 22:24:46 PDT 2013


On Saturday, 7 September 2013 at 17:00:08 UTC, Walter Bright 
wrote:
> Outlining of member functions is the practice of placing the 
> declaration of a member function in the struct/class/union, and 
> placing the definition of it at global scope in the module or 
> even in another module.
>
> http://wiki.dlang.org/DIP47

I'm against that.

Reasons:

- Do not change a language without very solid or even urgent need.

- A concise spec (we are going there that, right?) and 
reliability is way more important than gadgets or "X has that. We 
need that, too!".

- What for? This approach is anyway not the right one. If this is 
about readability then ...
... what's the big issue? "I don't like 'class ...{' at the 
beginning of my source code and a '}' at the end"?
Because that's what it comes down to.

If this is about readability as in "I want to have a quick and 
comfortable look
at my module or class interface" (which is a reasonable desire 
and a useful thing) then ...
... the solution is not to change the language but to have a 
compiler switch to have the compiler generate a client/interface 
view file. (One might discuss what exactly should should go there)


A+ -R


More information about the Digitalmars-d mailing list