Release D 2.087.0
Johannes Pfau
nospam at example.com
Mon Jul 15 20:57:59 UTC 2019
Am Mon, 15 Jul 2019 20:39:14 +0000 schrieb David Nadlinger:
> On Monday, 15 July 2019 at 20:27:16 UTC, Johannes Pfau wrote:
>> I guess this should be documented somewhere then.
>
> See druntime/CONTRIBUTING.md:
>
> ```
> In general, only modules in the 'core' package should be made public.
> The single exception is the 'object' module which is not in any package.
>
> The convention is to put private modules in the 'rt' or 'gc' packages
> depending on what they do and only put public modules in 'core'.
>
> Also, always avoid importing private modules in public modules. […]
> ```
>
Well, this just opens the discussion on private vs. public modules again.
The new array hooks are private as well, according to the definition
above they would have to be in rt. And core.internal.* certainly aren't
public modules.
I don't see how "should be made public" can be interpreted as "should be
installed", especially considering that templates need source code
installed (core.internal), but that's completely orthogonal to what
functions should be private (core.internal) / public to users of druntime.
However, I'll open a PR to clarify that paragraph.
> This split has been in place since back in the D1/Tango days.
Sure, the core vs rt split did. But core.internal did not exist in D1.
--
Johannes
More information about the Digitalmars-d-announce
mailing list