On Apr 19, 2012, at 11:30 PM, "Jameson Ernst" <[email protected]> wrote:

> On Thursday, 19 April 2012 at 19:37:28 UTC, Nick Sabalausky wrote:
>> "Paulo Pinto" <[email protected]> wrote in message
>> news:[email protected]...
>>> Hi,
>>> 
>>> just wanted to announce that Sony has finally made the new Playstation
>>> Vita SDK available, as we were discussing some months ago.
>>> 
>>> http://www.playstation.com/pss/index_e.html
>>> 
>>> The gamming industry seems to be slowing moving to C#. Would we still
>>> be able to convince developers to move to D instead?
>>> 
>> 
>> Yes. I suspect that the movement to C# is somewhat of a compromise due to
>> the fact that C/C++ has been the *only* real systems language usable for
>> most gaming systems. Obviously, something better than C++ is needed, and
>> thanks to the moronic VM/interpreted obsessions from the last decade or so
>> that rendered most new languages impotent, there was no real alternative to
>> C++. So, I suspect, that's why they made the compromise of going with C#.
>> 
>> But D is *real* systems language, unlike C#. And frankly, it beats the snot
>> out of C#. I'm not just saying that subjectively as D fan: Five years ago
>> (if not less) I considered C# and D tied as my favorite languages. But the
>> more I used both, the more I got fed up with C#'s dumb limitations and MS's
>> disinterest in addressing them, and the more I liked D.
>> 
>> If D can't be made to attract game devs away from C++/C#, then I'll loose
>> what little faith I have left in mainstream games development.
> 
> As a C# game developer very interested in D, I'll chime in on this. The 
> contrast from C++ is definitely a part of it. C# is very pleasant to work in 
> for the most part. C# is actually quite fast, but would I prefer to also reap 
> the full benefit of native speed? Absolutely, that's why I'm so interested in 
> D.
> 
> I think there's more to it though. I mentioned this in the Fibers thread, but 
> C# provides a limited form of coroutine built into the language. The utility 
> of coroutines in game logic cannot be overstated. Being able to do things 
> like:
> 
> {
>    WalkTo(pos);
>    WaitForSeconds(3);
>    FireMyLaser(target);
> }
> 
> And have it JUST WORK like you want is huge. You can get this by delegating 
> out to a script language that supports it like LUA, but then we're back in 
> JIT territory. Expressing this kind of thing in the native language itself 
> would be ideal.
> 
> I think D is sitting on a game dev goldmine with core.thread.Fiber. 
> Especially the bit about being able to migrate them across threads. Having 
> 10,000 entity coroutines active and being able to load balance them across 
> all your cores with a taskpool would be amazing. I'm just worried that since 
> Fiber seems to be such a low-key feature that it won't survive a refactor of 
> the library or fall out of favor over time and be deprecated.

For what it's worth, Mikola Lysenko did a talk on coroutines in D at a D 
conference a few years ago. It's on video, if you're interested in looking for 
it. 

Reply via email to