On Monday, 15 July 2019 at 12:02:35 UTC, Seb wrote:
I think that fits core.internal better than rt. Have you
considered that during said discussion?
The implementations in `rt/array` contain templates that are
ports of runtime hooks that used to reside in `rt`. The
implementations also require importing implementations from `rt`
so it makes sense to me that they should all stay within `rt`.
For reference, the discussion was this one:
http://imgur.com/a/HszdtHd
I'm sorry that I missed it, because Vladimir makes a very good
point. rt isn't supposed to be available nor importable by the
user.
`rt` is not imported by the user; it is imported by the compiler
indirectly through `object.d`.
rt can import core, but core can't import rt.
Many of the implementations in `rt/array` require importing or
referencing other implementations in `rt` (e.g. `rt.lifetime`).
If they were moved to `core.internal` they would require
importing `rt` or peeking into `rt` with various hacks, which
exactly what you've said should not be done.
Based on what you and Vladimir have said, I'm even more confident
I've made the right decision putting them in `rt`.
Mike