On Wed, 05 Mar 2014 17:55:27 -0000, Iain Buclaw <[email protected]> wrote:

On 5 March 2014 17:16, Regan Heath <[email protected]> wrote:
On Tue, 04 Mar 2014 00:09:46 -0000, Walter Bright
<[email protected]> wrote:

This is an important debate going on here:

https://github.com/D-Programming-Language/druntime/pull/732

It has a wide impact, and so I'm bringing it up here so everyone can
participate.



The disagreement here seems to boil down to two competing goals.

1. Walter wants the C include to map directly to a D import.
2. Sean wants to be able to ensure he does not import and use a platform
specific function/definiton in a cross platform application.

Is that about right?

3. Iain wants to be able to ensure ports of druntime (ARM, MIPS,
SPARC, etc...) are conveniently - as in not complex - split up without
introducing a new namespace.

:o)

Sorry.  Missed that requirement :)

I like your last idea re transitioning away from core.sys.posix.* by using version(Posix). Presumably, in the case of modules which contain POSIX and non-POSIX definition we would wrap those in version blocks also.

I think if we add the mapping modules as Walter suggested then to split the runtime for a specific platform (which GCC requires?) then you would copy the modules in core.* and core.sys.* and then the core.sys.<platform>.*.

R

--
Using Opera's revolutionary email client: http://www.opera.com/mail/

Reply via email to