Missing version(Unix). Again.
Sean Kelly
sean at f4.ca
Mon May 1 15:10:47 PDT 2006
Anders F Björklund wrote:
> Sean Kelly wrote:
>
>>> I'm not really sure why Ares changed the name from Unix to Posix,
>>> surely there was a good reason for doing it differently from GDC ?
>>> "Unix", see http://www.digitalmars.com/drn-bin/wwwnews?D.gnu/1212
>>> (hope it doesn't mean that we need *three* versions, in the above)
>>
>> "POSIX" is an API spec, while "UNIX" is merely a generic term for some
>> systems that implement that spec. I thought it made more sense to say
>> whether your OS supported the API and leave OS-specific stuff to
>> what's actually OS-specific (in sys/*).
>
> I made the same argument myself, but it seemed like both Walter and
> David wanted to split it by OS instead, so I just left it at that...
>
> I must have missed this "sys" hierarchy, that is an Ares thing right ?
> As I only knew about the Phobos and Deimos roots, and the loose files.
Yes it is. This is the current breakdown:
std.c - standard C headers
std.c.posix - POSIX headers
std.c.posix.sys - same
sys.windows - Windows-specific D code
sys.windows.c - Windows C headers
and so on for linux, darwin, etc.
Currently, the files in sys.linux.c duplicate some information in
std.c.posix, but I am gradually phasing it out.
>> Admittedly, sys/linux/c still contains a bunch of stuff that's
>> actually a part of POSIX, but I'm trying to phase it out as it's
>> implemented in the POSIX headers.
>
> I recall that GDC had to add the std.c.dirent module, for instance.
> Will download Ares, and take a look at this alternative setup...
The current Posix headers only support Linux and (to a limited degree)
Darwin, but it would be easy enough to add other OSes as well. I'm
taking care of them on an as-needed basis, but there's a decent bit of
functionality available so far.
Sean
More information about the Digitalmars-d
mailing list