Philosophy of how OS API imports are laid out in druntime
Kagamin
spam at here.lot
Wed Mar 5 02:37:01 PST 2014
On Tuesday, 4 March 2014 at 00:09:47 UTC, Walter Bright 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.
So, if we combine your, Sean's and yebblies' proposals, we will
have
1) ports folder with implementation subfolders for each os and
their translated headers - this works better with your "copy what
I need" use case - just copy your os's folder and you can work,
you can't copy what you need if headers for the same os are
spread across many folders.
2) public module core.stdc will conditionally import ports.os.*
for platform-specific definitions compliant with C standard
3) public module core.sys.windows - it may depend on stdc and
thus import ports.windows.*
4) public module core.sys.posix - for everything else, which
corresponds to headers seen in unixes and conditionally imports
ports.os.*, it may have a folder for windows for things like
unistd if those didn't fall under stdc.
5) we probably shouldn't have cocoa and gtk?
More information about the Digitalmars-d
mailing list