DIP10005: Dependency-Carrying Declarations is now available for community feedback

pineapple via Digitalmars-d digitalmars-d at puremagic.com
Sun Dec 18 16:32:53 PST 2016


On Sunday, 18 December 2016 at 23:18:27 UTC, Andrei Alexandrescu 
wrote:
> Great, thanks. Please take a look at the accuracy of the 
> discussion. I expanded the "Workaround" section and moved it 
> near the top.
>
> https://github.com/dlang/DIPs/pull/51
>
> https://github.com/dlang/DIPs/blob/dd46252e820dce66df746540d7ab94e0b00a6505/DIPs/DIP1005.md
>
>
> Andrei

It's reasonably accurate. The only thing I would point out is 
that few modules define only one public symbol; the median 
probably lies around 4 or 5. A few modules, most or all being in 
the traits package, define considerably more. The 
mach.traits.primitives module defines 28 public symbols, by my 
count. (Though that's still small stuff relative to Phobos.)

I think it would be most accurate to word the sentence as:

> It is organized as such that each module contains a small 
> number of related declarations (such as canAdjoin, Adjoin, and 
> AdjoinFlat in module adjoin.d) along with documentation and 
> unit tests.



More information about the Digitalmars-d mailing list