Windows API and druntime/Phobos

Manu turkeyman at gmail.com
Thu Jan 26 06:45:12 PST 2012


On 26 January 2012 16:33, Marco Leise <Marco.Leise at gmx.de> wrote:

> Am 26.01.2012, 05:08 Uhr, schrieb Brad Roberts <braddr at puremagic.com>:
>
>  On 1/24/2012 8:48 PM, Jonathan M Davis wrote:
>>
>>> The level of support for the Windows API in druntime and Phobos is
>>> pretty low.
>>> As I understand it, Windows users are pretty much forced to use
>>> http://www.dsource.org/**projects/bindings/browser/**trunk/win32<http://www.dsource.org/projects/bindings/browser/trunk/win32>if they need
>>> comprehensive Win32 API bindings. druntime seems to be trying to define
>>> all of
>>> the OS-specific stuff like that, but on top of it missing much of it, in
>>> the
>>> case of the Win32 API, that's a _lot_ of functions, and I don't know if
>>> we
>>> want to put that much in druntime. So, the question is, how do we want to
>>> support the Win32 API in druntime and Phobos?
>>>
>>> Do we want to put all of the Win32 API bindings in druntime? If not,
>>> then do
>>> we want to put them in Phobos? Or do we just want to send Windows
>>> developers
>>> to a 3rd party library like the Win32 bindings project on dsource? Given
>>> that
>>> they're OS bindings, I would _think_ that we'd want them in druntime,
>>> but I
>>> don't know.
>>>
>>> Regardless, this is one of those issues which frequently plagues D
>>> Windows
>>> developers, and we really should at least get a plan together as to how
>>> we
>>> want to handle it.
>>>
>>> - Jonathan M Davis
>>>
>>>
>>> P.S. A related pull request: https://github.com/D-**Programming-<https://github.com/D-Programming->
>>> Language/druntime/pull/139
>>>
>>
>> We've got the posix api set in the runtime, not just the subset that the
>> runtime or phobos needs.  IMHO, windows should
>> follow that pattern.  It might be large from a number of lines of
>> declarations standpoint, but who cares.
>>
>
> I tend to agree.
>

I wouldn't object to having guaranteed access to winapi in druntime... but
it is pretty big. In the interest of following the pattern with posix, it
makes sense to me.
But I'm also not allergic to it being a completely separate library, as
long as it's distributed with the windows toolchain. I probably wouldn't
want to see it in std, that makes no sense to me. druntime makes some sense
(since parts of druntime depend on windows calls) if people think that's
where it should be.

What is the reasoning for putting the posix api in druntime? That seems
like a weird choice to me... it's nothing to do with druntime, except for a
couple of dependencies perhaps.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120126/16e77462/attachment.html>


More information about the Digitalmars-d mailing list