April 10, 2012
On 2012-04-10 09:24, Sönke Ludwig wrote:

> Okay, I would agree to the first part. This would make the interaction
> with WinRT bidirectional and more or less seemless. But one thing in
> particular, that you are not allowed to do is to use kernel32.dll (at
> least I was told). So you still have to rewrite all the C-library
> functions (such as fopen(), malloc() and so on) and anything that the D
> runtime or Phobos uses from kernel32 or similar libraries; I gues the
> same applies to ws2_32 and so on.

That doesn't sound like a good idea, to force every language to rewrite their runtime and standard library.

-- 
/Jacob Carlborg
April 10, 2012
Am 10.04.2012 09:30, schrieb Jacob Carlborg:
> On 2012-04-10 09:24, Sönke Ludwig wrote:
>
>> Okay, I would agree to the first part. This would make the interaction
>> with WinRT bidirectional and more or less seemless. But one thing in
>> particular, that you are not allowed to do is to use kernel32.dll (at
>> least I was told). So you still have to rewrite all the C-library
>> functions (such as fopen(), malloc() and so on) and anything that the D
>> runtime or Phobos uses from kernel32 or similar libraries; I gues the
>> same applies to ws2_32 and so on.
>
> That doesn't sound like a good idea, to force every language to rewrite
> their runtime and standard library.
>
... or they use the VisualStudio C/C++ runtime as their base, which is already adapted.

But since this is all just theory and guesswork, some real tests are probably in order - maybe I can do that tomorrow but unfortunately, my time is currently extremely limited.
April 10, 2012
On Tuesday, 10 April 2012 at 07:24:09 UTC, Sönke Ludwig wrote:
> But one thing in particular, that you are not allowed to do is to use kernel32.dll (at least I was told). So you still have to rewrite all the C-library functions (such as fopen(), malloc() and so on) and anything that the D runtime or Phobos uses from kernel32 or similar libraries; I gues the same applies to ws2_32 and so on.

Not strictly true. Here's the subset of the Win32 API that can be used in Metro apps: http://msdn.microsoft.com/en-us/library/windows/apps/br205757.aspx
April 10, 2012
On 04/09/2012 10:12 AM, Dmitry Olshansky wrote:
> Simply put WinRT is a major update on COM technology and even here it's
> backwards compatible with the old COM.
> The fact that OS API is expossed through this new COM interface is just
> a nice feature. I was kind of wondering when they will finally ditch
> Win32 API.

And some details at :
http://www.codeproject.com/Articles/262151/Visual-Cplusplus-and-WinRT-Metro-Some-fundamentals

Since WinRT programming in C++ is such a pain, I think we can see this as a chance for D2.
April 10, 2012
On Tuesday, 10 April 2012 at 07:58:57 UTC, John Chapman wrote:
> On Tuesday, 10 April 2012 at 07:24:09 UTC, Sönke Ludwig wrote:
>> But one thing in particular, that you are not allowed to do is to use kernel32.dll (at least I was told). So you still have to rewrite all the C-library functions (such as fopen(), malloc() and so on) and anything that the D runtime or Phobos uses from kernel32 or similar libraries; I gues the same applies to ws2_32 and so on.
>
> Not strictly true. Here's the subset of the Win32 API that can be used in Metro apps: http://msdn.microsoft.com/en-us/library/windows/apps/br205757.aspx

Great! I was looking for such a list, thanks.

So since you have at least HeapAlloc and some other functions, it looks like a doable task to just adjust the existing runtime. Just many functions like CreateFile would need to be changed to their allowed counterparts as it looks.

But the question is still if that snn.lib or what else is beeing linked in can be adjusted or still needs to be replaced.
April 10, 2012
Oh, crap.
I wish your message could have appeared a week or two earlier. Almost smashed my head against the wall trying to figure the hell out of x64 seg fault.
April 10, 2012
On Tue, 10 Apr 2012 15:02:15 +0200, mist <none@none.none> wrote:

> Oh, crap.
> I wish your message could have appeared a week or two earlier. Almost smashed my head against the wall trying to figure the hell out of x64 seg fault.

I hit it a couple of weeks ago and posted in .learn :)
My head was quite bloody by the time someone referenced that bug too
April 10, 2012
Ugh, my spare time is rather hindered by trying to follow all messages in D.announce and D groups ( and googling for all unknown stuff cool guys are talking about ) - I am afraid that adding D.learn to this everyday list would have made me a goner.. and you have just named a reason why it should be done! :)
1 2 3
Next ›   Last »