www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - [off-topic] Sony releases PS Vita SDK

reply Paulo Pinto <pjmlp progtools.org> writes:
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?

--
Paulo
Apr 19 2012
next sibling parent reply "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Paulo Pinto" <pjmlp progtools.org> wrote in message 
news:jmpl39$1oa1$1 digitalmars.com...
 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.
Apr 19 2012
next sibling parent reply "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"H. S. Teoh" <hsteoh quickfur.ath.cx> wrote in message 
news:mailman.1939.1334865913.4860.digitalmars-d puremagic.com...
 On Thu, Apr 19, 2012 at 03:37:38PM -0400, Nick Sabalausky wrote:
 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.

I've never programmed in C#, so I can't really objectively compare C# and D. I *will* say, though, that in many ways D feels like "C++ done right", or "what C++ should have been". In that sense, I think the factors that drove game devs to abandon C++ should be what drives them to adopt D.

Right. Agree totally. As for C#: I've always seen it as...maybe not "Java done right" because I'm not sure that's possible (if "done right", there wouldn't be much Java-ness left)...but "Java done much better". It's really just "Java with less suck". C# *is* merely Microsoft's Java as many people have accused, but it's a much better Java. A Reduced-Fat Vanilla Latte, if you will ;) For example, at least it *HAS* pointers and delegates, and it had foreach, [gimped] generics and auto-(un)boxing *long* before Java did.
 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.

Well, the Manu's of the world are still clamoring for some missing features in D that will finally convince them to adopt D. :-)

Yea, D *does* still need some work for game devs. Most notably, mature non-x86 toolchains. The custom allocator stuff needs to be finished too, and a better way to avoid accidental use of the GC.
 But IMAO, indie gaming is where it's at these days. True creativity has
 left commercial games since id's DOOM days.

Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3 or 4, and some Japanese stuff), I see the mainstream industry as mostly a "Pixar-wannabe high-def-animation factory" these days. They don't care about gameplay anymore, just storytelling, animation and emulating Hollywood. Yes, emulating Hollywood. Seriously: Just browse through almost any issue of "Game Developer Magazine" from the past 5 or so years - half of it's a bunch of very *deliberate* and unapologetic "How can we be more like Hollywood?". It's an outright insult to the medium of videogames (Not because of Hollywood sucking, but because any medium that tries to ape another medium is inherently being untrue and disrespectful to itself).
Apr 19 2012
next sibling parent reply Matt Soucy <msoucy csh.rit.edu> writes:
On 04/19/2012 06:31 PM, Sean Kelly wrote:
 On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:

 "H. S. Teoh"<hsteoh quickfur.ath.cx>  wrote in message
 news:mailman.1939.1334865913.4860.digitalmars-d puremagic.com...

 But IMAO, indie gaming is where it's at these days. True creativity has
 left commercial games since id's DOOM days.

Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3 or 4, and some Japanese stuff), I see the mainstream industry as mostly a "Pixar-wannabe high-def-animation factory" these days. They don't care about gameplay anymore, just storytelling, animation and emulating Hollywood.

I've switched from calling those games to calling them interactive cinematic experiences. Some are actually enjoyable from a story perspective, but overall I think they're an evolutionary dead end for the game industry.

content is a quicktime event. Honestly? I love a good story, and I like my games to have a plot that keeps me interested in it, but it also has to have GAMEPLAY that keeps me interested. I agree, I don't see that type of game going much further.
Apr 19 2012
parent Jacob Carlborg <doob me.com> writes:
On 2012-04-20 01:11, Sean Kelly wrote:

 Alan Wake, for example, uses classic cinematic techniques for scaring the
player, and to make sure they're experienced, railroads the player through the
predetermined route, even if the rational choice would be to do something else.
 In movies this technique is effective because seeing the protagonist do
something stupid creates a sense of tension as the viewer anticipates the Bad
Thing that is sure to happen.  In a game, the player just has the choice that
should be provided to them taken away, creating a sense of frustration at not
being able to do something sensible.  What follows is a tedious plod towards
the inevitable Scary Moment, which still relies on the player walking along the
correct path so the event is triggered from the intended position.

In some games these paths and positions can be moved depending on that the player does to make sure they are triggered. -- /Jacob Carlborg
Apr 19 2012
prev sibling parent reply sclytrack <sclytrack ars.com> writes:
 As for C#: I've always seen it as...maybe not "Java done right" because I'm

It's also Delphi. Delphi + Java
Apr 20 2012
parent "Paulo Pinto" <pjmlp progtools.org> writes:
Quite true.

"sclytrack"  wrote in message news:jmr47r$1q2a$1 digitalmars.com...


 As for C#: I've always seen it as...maybe not "Java done right" because 
 I'm

It's also Delphi. Delphi + Java
Apr 20 2012
prev sibling next sibling parent reply Sean Kelly <sean invisibleduck.org> writes:
On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:

 "H. S. Teoh" <hsteoh quickfur.ath.cx> wrote in message=20
 news:mailman.1939.1334865913.4860.digitalmars-d puremagic.com...
=20
 But IMAO, indie gaming is where it's at these days. True creativity =


 left commercial games since id's DOOM days.
=20

Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3 or =

 and some Japanese stuff), I see the mainstream industry as mostly a=20
 "Pixar-wannabe high-def-animation factory" these days. They don't care =

 gameplay anymore, just storytelling, animation and emulating =

I've switched from calling those games to calling them interactive = cinematic experiences. Some are actually enjoyable from a story = perspective, but overall I think they're an evolutionary dead end for = the game industry.=
Apr 19 2012
parent "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Sean Kelly" <sean invisibleduck.org> wrote in message 
news:mailman.1942.1334874732.4860.digitalmars-d puremagic.com...
On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:
 "H. S. Teoh" <hsteoh quickfur.ath.cx> wrote in message
 news:mailman.1939.1334865913.4860.digitalmars-d puremagic.com...

 But IMAO, indie gaming is where it's at these days. True creativity has
 left commercial games since id's DOOM days.

Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3 or 4, and some Japanese stuff), I see the mainstream industry as mostly a "Pixar-wannabe high-def-animation factory" these days. They don't care about gameplay anymore, just storytelling, animation and emulating Hollywood.

I've switched from calling those games to calling them interactive cinematic experiences. Some are actually enjoyable from a story perspective, but overall I think they're an evolutionary dead end for the game industry.=

The funny thing is, such things are *exactly* what sunk the Sega/Mega CD. There were good games on it, but the ones Sega really pushed were the Digital Pictures ones that put cinematics/etc ahead of gameplay. As a result, it sunk the system. But now, the whole damn industry has gotten it into their heads to do *the same thing*. They *think* they're not repeating it just because now they're using realtime CG instead of FMV. But the FMV is a red herring - Yea, the production values made B-movies look like blockbusters (which I actually kinda liked), but the *core* problem was reducing gameplay to "backseat" status behind movie-mimicry - *exactly* what the game studios are obsessed with doing now. It worked for Dragon's Lair, because that was so novel at the time. Nobody had played a game like that before, nobody had *seen* a game that looked anything like that before, so it worked primarily due to its uniqueness. But it *can't* be reproduced because we've *already* had Dragon's Lair - it's no longer novel, and can't be novel again. And Zelda Wind Waker proved that real-time graphics have already exceeded Dragon's Lair on *last* generation's hardware. So that's it, the "Dragon's Lair" approach to games is dead, dead, dead. I'll take another game with a "Save the princess" backstory, or even *no* story at all, over a game driven start-to-finish by a less-than-spectacular story any day. Hell, it's much better replay value like that anyway: Listening to the same story over and over really kills replayability. Does anyone care why MegaMan's trying to defeat Wily? Or his "emotional growth and struggle" while doing it? Hell no, they just enjoy doing it.
Apr 19 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
On Apr 19, 2012, at 3:40 PM, Matt Soucy wrote:

 On 04/19/2012 06:31 PM, Sean Kelly wrote:
 On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:
=20
 "H. S. Teoh"<hsteoh quickfur.ath.cx>  wrote in message
 news:mailman.1939.1334865913.4860.digitalmars-d puremagic.com...
=20
 But IMAO, indie gaming is where it's at these days. True creativity =




 left commercial games since id's DOOM days.
=20

Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3 =



 and some Japanese stuff), I see the mainstream industry as mostly a
 "Pixar-wannabe high-def-animation factory" these days. They don't =



 gameplay anymore, just storytelling, animation and emulating =



=20
 I've switched from calling those games to calling them interactive =


perspective, but overall I think they're an evolutionary dead end for = the game industry.
 My personal favorite is the new Jurassic Park game, where most of the =

my games to have a plot that keeps me interested in it, but it also has = to have GAMEPLAY that keeps me interested.
 I agree, I don't see that type of game going much further.

I think it's going to take some time for studios to realize both that = gamers don't want movies, and more importantly that the techniques for = telling an effective story within a game are different from those within = a movie because games provide choice to the player. Alan Wake, for example, uses classic cinematic techniques for scaring = the player, and to make sure they're experienced, railroads the player = through the predetermined route, even if the rational choice would be to = do something else. In movies this technique is effective because seeing = the protagonist do something stupid creates a sense of tension as the = viewer anticipates the Bad Thing that is sure to happen. In a game, the = player just has the choice that should be provided to them taken away, = creating a sense of frustration at not being able to do something = sensible. What follows is a tedious plod towards the inevitable Scary = Moment, which still relies on the player walking along the correct path = so the event is triggered from the intended position. All of this is aside from the fact that the game industry seems to be = making all the same mistakes the movie industry made in the 80s and 90s.=
Apr 19 2012
prev sibling next sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 4/19/12 3:05 PM, H. S. Teoh wrote:
 Yeah, I've been working with C++ for almost 2 decades, and I really
 can't say I'd recommend it for new projects. At my day job, for example,
 we actually migrated from C++ back to plain old C, due to an incredibly
 over-engineered C++ codebase that was slow, bloated, and unmaintainable.
 It sounds laughable to the casual observer, but I have to say that there
 was actually a lot gained by this migration. We are much more productive
 with the new C-based system than C++. There are just too many ways to
 write bad code in C++. C makes everything simple and clear, if a bit
 tedious at times (due to basically partially reimplementing a class
 system in C).

This is interesting. We use C++ at Facebook all over the place, and gainfully. If we were to use C, we'd have major difficulties with e.g. containers. The thought of using a hashtable in C... ouch. Andrei
Apr 19 2012
parent "Paulo Pinto" <pjmlp progtools.org> writes:
I also find it interesting.

Personally I will only use C if I really have to, as the language is just 
too low
level for what I am used to. I have been following C++ since the late 80's 
and
used to work with it professionaly until around 2006. As such I am not lost
in C++ complexity and I like to be able to use STL and Boost.

All languages that are able to provide proper set abstractions are complex,
even D for that matter.

While I worked at NSN there was a project that did migrate from Java to C,
but it was only due to hardware restrictions on some network elements for
the specific unit. Just to give another example of migration to C.

--
Paulo

"Andrei Alexandrescu"  wrote in message news:jmqlu9$mov$1 digitalmars.com...

On 4/19/12 3:05 PM, H. S. Teoh wrote:
 Yeah, I've been working with C++ for almost 2 decades, and I really
 can't say I'd recommend it for new projects. At my day job, for example,
 we actually migrated from C++ back to plain old C, due to an incredibly
 over-engineered C++ codebase that was slow, bloated, and unmaintainable.
 It sounds laughable to the casual observer, but I have to say that there
 was actually a lot gained by this migration. We are much more productive
 with the new C-based system than C++. There are just too many ways to
 write bad code in C++. C makes everything simple and clear, if a bit
 tedious at times (due to basically partially reimplementing a class
 system in C).

This is interesting. We use C++ at Facebook all over the place, and gainfully. If we were to use C, we'd have major difficulties with e.g. containers. The thought of using a hashtable in C... ouch. Andrei
Apr 19 2012
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Thu, Apr 19, 2012 at 10:42:27PM -0500, Andrei Alexandrescu wrote:
 On 4/19/12 3:05 PM, H. S. Teoh wrote:
Yeah, I've been working with C++ for almost 2 decades, and I really
can't say I'd recommend it for new projects. At my day job, for
example, we actually migrated from C++ back to plain old C, due to an
incredibly over-engineered C++ codebase that was slow, bloated, and
unmaintainable.  It sounds laughable to the casual observer, but I
have to say that there was actually a lot gained by this migration.
We are much more productive with the new C-based system than C++.
There are just too many ways to write bad code in C++. C makes
everything simple and clear, if a bit tedious at times (due to
basically partially reimplementing a class system in C).

This is interesting. We use C++ at Facebook all over the place, and gainfully. If we were to use C, we'd have major difficulties with e.g. containers. The thought of using a hashtable in C... ouch.

Hashtables in C aren't *that* nasty, if you do it right. (But of course, D's AA's trumps them all, even in its current buggy state.) But I suppose my experience has been colored by the trauma of working with an over-engineered C++ system that only one guy understands, resulting in people who came after him rewriting their own versions of code that they didn't dare reuse 'cos they didn't understand it, eventually ending up in a patch-upon-bandaid-upon-patch codebase with umpteen ways of doing the same thing that *nobody* understands, not even the original guy. One example. The system had this elaborate database abstraction class hierarchy that could do wonders: automatically populate data structures, automatically ensure data consistency, periodically do self-maintenance, replicate itself and sync with backup servers, etc., -- if we only knew how to use it. Problem is, only the guy who wrote it knew which obscure class objects to instantiate to make the thing sing to our tune, so somebody got frustrated and wrote what is essentially a wrapper function that takes a raw SQL string and executes it, thus bypassing the entire beautiful database abstraction code completely. Since everybody else didn't understand the original code either, they started using this SQL bypass function everywhere... only to discover that the system broke in subtle ways when you didn't go through its beautifully over-engineered abstractions. So more and more dirty hacks were introduced that piled on top of each other like festering infected bandages that fail to address the real wound underneath. At the end of its miserable life, the system had places where useful work was done in dtors(!), and was so bloated that the developers of other modules were so scared of linking in the C++ API library that they preferred instead to make function calls to the C++ code by fwrite()ing function parameters into a file, fork() and exec()ing a helper utility that linked to the C++ library, which fread()'d function parameters from the file, then called a library function that then serialized said parameters so that it can do an IPC call to a C++ daemon. The return value of the function took a similar route to pass back to the C code. This was done for *every* function call made from C to the C++ code. My previous supervisor, who was involved in the rewrite effort in C, was so elated when the new system was finally ready and he could go into the source tree and gleefully delete every single one of those C++ files that constituted the old system. I have to admit I shared the same sentiment. (Heck, I could re-checkout the old code and then delete it all over again -- it was that gratifying to see it die an overdue death.) T -- Tech-savvy: euphemism for nerdy.
Apr 19 2012
prev sibling next sibling parent reply "Jameson Ernst" <j.patrick.ernst gmail.com> writes:
On Thursday, 19 April 2012 at 19:37:28 UTC, Nick Sabalausky wrote:
 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 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.
Apr 19 2012
parent Robert Clipsham <robert octarineparrot.com> writes:
On 20/04/2012 15:49, Manu wrote:
 On 20 April 2012 17:28, Sean Kelly <sean invisibleduck.org
 <mailto:sean invisibleduck.org>> wrote:

     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.


 Awesome , I certainly am. Did he have a working implementation?

http://prowiki.org/wiki4d/wiki.cgi?Videos Video: http://vimeo.com/1873969 Slides: http://replay.waybackmachine.org/20081010074222/http://team0xf.com/conference/fibers.pdf It's been a couple of years since I watched the video, I'm pretty sure it's what you can find in core.thread.Fiber that he's talking about (it used to be part of Tango). -- Robert http://octarineparrot.com/
Apr 20 2012
prev sibling next sibling parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
Well, C# can also be real systems programming language, see Singularity.
And native code compilers are also available (Bartok, Mono AOT, NGEN).

D names itself a system programming language, but I am yet to see any OS
coded on it. Without system programming examples, it becomes just another
application level language.

On the other hand I confess this is a very hard task, as most of systems 
programming
languages that manage to exist as such (PL/I, Ada, C, C++, Mac Pascal), did 
so because
there was an OS vendor that made use of them.

Now that I mention this, does anyone know if D is being used as research
language in any operating system department in some university? I remember
there were some posts about it long time ago.

What I see going for D in terms of language features:

- scope
- compile time metaprogramming
- mixin as a kind of macro mechanism
- inline assembler (this one might be a bit debatable)
- delegation via subtyping
- all available implementations compile straight to native code

--
Paulo


"Nick Sabalausky"  wrote in message news:jmpphn$20s9$1 digitalmars.com...

"Paulo Pinto" <pjmlp progtools.org> wrote in message
news:jmpl39$1oa1$1 digitalmars.com...
 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.
Apr 19 2012
next sibling parent reply =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <xtzgzorex gmail.com> writes:
On 20-04-2012 08:43, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see Singularity.

No, this is actually a common misconception. Singularity does *not* use plain C#. It uses Sing#, which is an extension of Spec# adding message-passing, compile-time reflection, and safe manual memory management features. Spec# is a version of C# heavily based on design-by-contract (I'd argue its DbC is far superior to D's in fact). Plain C# out of the box is not useful for systems-level programming, and especially not in a kernel.
 And native code compilers are also available (Bartok, Mono AOT, NGEN).

 D names itself a system programming language, but I am yet to see any OS
 coded on it. Without system programming examples, it becomes just another
 application level language.

https://github.com/xomboverlord/xomb
 On the other hand I confess this is a very hard task, as most of systems
 programming
 languages that manage to exist as such (PL/I, Ada, C, C++, Mac Pascal),
 did so because
 there was an OS vendor that made use of them.

 Now that I mention this, does anyone know if D is being used as research
 language in any operating system department in some university? I remember
 there were some posts about it long time ago.

 What I see going for D in terms of language features:

 - scope
 - compile time metaprogramming
 - mixin as a kind of macro mechanism
 - inline assembler (this one might be a bit debatable)
 - delegation via subtyping
 - all available implementations compile straight to native code

 --
 Paulo


 "Nick Sabalausky" wrote in message news:jmpphn$20s9$1 digitalmars.com...

 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 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.

-- - Alex
Apr 20 2012
parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
Actually when I read Singularity papers I keep thinking to myself that D 
could
be Sing#. In the sense that both share many common features.

Thanks for the xomb link.

--
Paulo

"Alex Rønne Petersen"  wrote in message 
news:jmr1vd$1m25$1 digitalmars.com...

On 20-04-2012 08:43, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see Singularity.

No, this is actually a common misconception. Singularity does *not* use plain C#. It uses Sing#, which is an extension of Spec# adding message-passing, compile-time reflection, and safe manual memory management features. Spec# is a version of C# heavily based on design-by-contract (I'd argue its DbC is far superior to D's in fact). Plain C# out of the box is not useful for systems-level programming, and especially not in a kernel.
 And native code compilers are also available (Bartok, Mono AOT, NGEN).

 D names itself a system programming language, but I am yet to see any OS
 coded on it. Without system programming examples, it becomes just another
 application level language.

https://github.com/xomboverlord/xomb
 On the other hand I confess this is a very hard task, as most of systems
 programming
 languages that manage to exist as such (PL/I, Ada, C, C++, Mac Pascal),
 did so because
 there was an OS vendor that made use of them.

 Now that I mention this, does anyone know if D is being used as research
 language in any operating system department in some university? I remember
 there were some posts about it long time ago.

 What I see going for D in terms of language features:

 - scope
 - compile time metaprogramming
 - mixin as a kind of macro mechanism
 - inline assembler (this one might be a bit debatable)
 - delegation via subtyping
 - all available implementations compile straight to native code

 --
 Paulo


 "Nick Sabalausky" wrote in message news:jmpphn$20s9$1 digitalmars.com...

 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 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.

-- - Alex
Apr 20 2012
parent reply =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <xtzgzorex gmail.com> writes:
On 20-04-2012 15:16, Paulo Pinto wrote:
 Actually when I read Singularity papers I keep thinking to myself that D
 could
 be Sing#. In the sense that both share many common features.

 Thanks for the xomb link.

 --
 Paulo

 "Alex Rønne Petersen" wrote in message
 news:jmr1vd$1m25$1 digitalmars.com...

 On 20-04-2012 08:43, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see Singularity.

No, this is actually a common misconception. Singularity does *not* use plain C#. It uses Sing#, which is an extension of Spec# adding message-passing, compile-time reflection, and safe manual memory management features. Spec# is a version of C# heavily based on design-by-contract (I'd argue its DbC is far superior to D's in fact). Plain C# out of the box is not useful for systems-level programming, and especially not in a kernel.
 And native code compilers are also available (Bartok, Mono AOT, NGEN).

 D names itself a system programming language, but I am yet to see any OS
 coded on it. Without system programming examples, it becomes just another
 application level language.

https://github.com/xomboverlord/xomb
 On the other hand I confess this is a very hard task, as most of systems
 programming
 languages that manage to exist as such (PL/I, Ada, C, C++, Mac Pascal),
 did so because
 there was an OS vendor that made use of them.

 Now that I mention this, does anyone know if D is being used as research
 language in any operating system department in some university? I
 remember
 there were some posts about it long time ago.

 What I see going for D in terms of language features:

 - scope
 - compile time metaprogramming
 - mixin as a kind of macro mechanism
 - inline assembler (this one might be a bit debatable)
 - delegation via subtyping
 - all available implementations compile straight to native code

 --
 Paulo


 "Nick Sabalausky" wrote in message news:jmpphn$20s9$1 digitalmars.com...

 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 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.


There's no doubt that D gets very close to being able to replace Sing#. The thing is just that Sing# was designed, from day one, to be OS-agnostic, i.e. compile to plain machine code, and to only rely on the very small HAL in Singularity. -- - Alex
Apr 20 2012
parent reply "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Paulo Pinto" <pjmlp progtools.org> wrote in message 
news:pgxiucaflhldzhfmgipl forum.dlang.org...
 Just noticed that Microsoft is planning to start using C# for systems 
 programming as well

 https://careers.microsoft.com/jobdetails.aspx?jid=76831

 Who knows what they are planning to do...

Between that and turning JS into desktop language for Win8, isn't their plan obvious? They plan to increase bloat! The optimizations in Win7 were just an accidental result of an email glitch that blocked communication between the managers and developers. They aim to rectify that oversight as...efficiently...as possible: Hence, VM for systems work and JS for apps. The only reason they didn't go with JS as their new systems language is because that requires more work, so it's delayed until Win9. ...Either that or their HR drones screwed up the job posting, which based on my experience with HR people seems entirely plausible. They probably got confused by all the many, many "buttons" on their keyboards.
Apr 21 2012
parent reply =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <xtzgzorex gmail.com> writes:
On 21-04-2012 09:18, Nick Sabalausky wrote:
 "Paulo Pinto"<pjmlp progtools.org>  wrote in message
 news:pgxiucaflhldzhfmgipl forum.dlang.org...
 Just noticed that Microsoft is planning to start using C# for systems
 programming as well

 https://careers.microsoft.com/jobdetails.aspx?jid=76831

 Who knows what they are planning to do...

Between that and turning JS into desktop language for Win8, isn't their plan obvious? They plan to increase bloat! The optimizations in Win7 were just an accidental result of an email glitch that blocked communication between the managers and developers. They aim to rectify that oversight as...efficiently...as possible: Hence, VM for systems work and JS for apps. The only reason they didn't go with JS as their new systems language is because that requires more work, so it's delayed until Win9. ....Either that or their HR drones screwed up the job posting, which based on my experience with HR people seems entirely plausible. They probably got confused by all the many, many "buttons" on their keyboards.

Er, that job posting did say "native *ahead-of-time*" compilers. I.e. no VM. -- - Alex
Apr 21 2012
parent "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Alex Rønne Petersen" <xtzgzorex gmail.com> wrote in message 
news:jmtolu$1e25$1 digitalmars.com...
 On 21-04-2012 09:18, Nick Sabalausky wrote:
 "Paulo Pinto"<pjmlp progtools.org>  wrote in message
 news:pgxiucaflhldzhfmgipl forum.dlang.org...
 Just noticed that Microsoft is planning to start using C# for systems
 programming as well

 https://careers.microsoft.com/jobdetails.aspx?jid=76831

 Who knows what they are planning to do...

Between that and turning JS into desktop language for Win8, isn't their plan obvious? They plan to increase bloat! The optimizations in Win7 were just an accidental result of an email glitch that blocked communication between the managers and developers. They aim to rectify that oversight as...efficiently...as possible: Hence, VM for systems work and JS for apps. The only reason they didn't go with JS as their new systems language is because that requires more work, so it's delayed until Win9. ....Either that or their HR drones screwed up the job posting, which based on my experience with HR people seems entirely plausible. They probably got confused by all the many, many "buttons" on their keyboards.

Er, that job posting did say "native *ahead-of-time*" compilers. I.e. no VM.

Meh, so much for my stupid joke then... :(
Apr 21 2012
prev sibling next sibling parent "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Paulo Pinto" <pjmlp progtools.org> wrote in message 
news:jmr0j7$1h5g$1 digitalmars.com...
 Well, C# can also be real systems programming language, see Singularity.
 And native code compilers are also available (Bartok, Mono AOT, NGEN).

Even so, the C# language itself can't really handle many native/systems-level tasks. For example, while I've heard that it's technically possible to reinterpret-cast a piece of memory, actually doing it involves some dark obscure corner of the API. At least it actually has pointers though, unline a certain other flagship VM language...
 D names itself a system programming language, but I am yet to see any OS
 coded on it. Without system programming examples, it becomes just another
 application level language.

Many people would argue that systems-langauge doesn't necessarily mean "OS written in it". Not that I intend to nit-pick the point: Just FWIW.
Apr 20 2012
prev sibling next sibling parent Jacob Carlborg <doob me.com> writes:
On 2012-04-20 08:43, Paulo Pinto wrote:

 Now that I mention this, does anyone know if D is being used as research
 language in any operating system department in some university? I remember
 there were some posts about it long time ago.

http://prowiki.org/wiki4d/wiki.cgi?KernelWithD I think there are a couple of other ones as well, don't recall their name though. -- /Jacob Carlborg
Apr 20 2012
prev sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
Language with pointers does not mean a thing for systems programming, there
are quite a few VM languages with pointers.

Even BASIC can be a systems programing language by that metric (PEEK/POKE).

--
Paulo

"SomeDude"  wrote in message news:dtklqpimpbunmevhvhqi forum.dlang.org... 

On Friday, 20 April 2012 at 06:43:51 UTC, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see 
 Singularity.
 And native code compilers are also available (Bartok, Mono AOT, 
 NGEN).

 D names itself a system programming language, but I am yet to 
 see any OS
 coded on it. Without system programming examples, it becomes 
 just another
 application level language.

I once asked on reddit what "system programming language" meant, and the 3 answers I received were: a language that gives full access to memory", i.e basically a language with pointers. Not one mentioned being suitable for programming operating systems. Yet, if you forget the standard library, disable the GC, and use a subset of the language (no exceptions for instance), I suppose it's possible to write low level code with it.
Apr 20 2012
prev sibling next sibling parent "Jakob Ovrum" <jakobovrum gmail.com> writes:
On Friday, 20 April 2012 at 06:43:51 UTC, Paulo Pinto wrote:
 D names itself a system programming language, but I am yet to 
 see any OS
 coded on it. Without system programming examples, it becomes 
 just another
 application level language.

The XOmB project has been around since forever: https://github.com/xomboverlord/xomb
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 04:40:56 UTC, H. S. Teoh wrote:
 But I suppose my experience has been colored by the trauma of 
 working
 with an over-engineered C++ system that only one guy 
 understands,
 resulting in people who came after him rewriting their own 
 versions of
 code that they didn't dare reuse 'cos they didn't understand it,
 eventually ending up in a patch-upon-bandaid-upon-patch 
 codebase with
 umpteen ways of doing the same thing that *nobody* understands, 
 not even
 the original guy.

 One example. The system had this elaborate database abstraction 
 class
 hierarchy that could do wonders: automatically populate data 
 structures,
 automatically ensure data consistency, periodically do 
 self-maintenance,
 replicate itself and sync with backup servers, etc., -- if we 
 only knew
 how to use it.  Problem is, only the guy who wrote it knew 
 which obscure
 class objects to instantiate to make the thing sing to our 
 tune, so
 somebody got frustrated and wrote what is essentially a wrapper 
 function
 that takes a raw SQL string and executes it, thus bypassing the 
 entire
 beautiful database abstraction code completely. Since everybody 
 else
 didn't understand the original code either, they started using 
 this SQL
 bypass function everywhere... only to discover that the system 
 broke in
 subtle ways when you didn't go through its beautifully 
 over-engineered
 abstractions. So more and more dirty hacks were introduced that 
 piled on
 top of each other like festering infected bandages that fail to 
 address
 the real wound underneath.

Oh yeah, I've seen that story too in a couple of other places. C++ seems to make exceptionnally easy for "mad coders" to screw up a whole system with overengineered pieces of crap. One of my colleagues spent more than a year rewriting a system that turned into a black box that nobody could maintain. My opinion is, when a team works in this language, code reviews should be an obligation, else there is always a guy like that, who has his genius idea that nobody else understands and puts his crap all over the place. Basically, the only piece of C++ software I've seen that never became a huge piece of steaming crap was a system that was systematically code reviewed by the main software architect and a couple of highly skilled engineers. I suspect D is not much better on this topic, it's possible to write extremely complex code with it too. Actually, it's possible to write complex and unmaintaineble stuff in any language (even in Python), but I believe the more complex the language, the easier it is to screw things up and the more important code reviews are.
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 06:43:51 UTC, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see 
 Singularity.
 And native code compilers are also available (Bartok, Mono AOT, 
 NGEN).

 D names itself a system programming language, but I am yet to 
 see any OS
 coded on it. Without system programming examples, it becomes 
 just another
 application level language.

I once asked on reddit what "system programming language" meant, and the 3 answers I received were: a language that gives full access to memory", i.e basically a language with pointers. Not one mentioned being suitable for programming operating systems. Yet, if you forget the standard library, disable the GC, and use a subset of the language (no exceptions for instance), I suppose it's possible to write low level code with it.
Apr 20 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
On Apr 19, 2012, at 8:42 PM, Andrei Alexandrescu <SeeWebsiteForEmail erdani.=
org> wrote:

 On 4/19/12 3:05 PM, H. S. Teoh wrote:
 Yeah, I've been working with C++ for almost 2 decades, and I really
 can't say I'd recommend it for new projects. At my day job, for example,
 we actually migrated from C++ back to plain old C, due to an incredibly
 over-engineered C++ codebase that was slow, bloated, and unmaintainable.
 It sounds laughable to the casual observer, but I have to say that there
 was actually a lot gained by this migration. We are much more productive
 with the new C-based system than C++. There are just too many ways to
 write bad code in C++. C makes everything simple and clear, if a bit
 tedious at times (due to basically partially reimplementing a class
 system in C).

This is interesting. We use C++ at Facebook all over the place, and gainfu=

The thought of using a hashtable in C... ouch. I wonder how much of the productivity gain is just from it being a new codeb= ase. There have been studies that demonstrate that, in general, C++ decrease= s the cost of maintenance.=20 As for hash tables in C... You're just stuck with casting the value. I imple= mented a C version of unordered_map for work and it's plenty easy to use. It= eration is done using a foreach routine with a callback.=20=
Apr 20 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
On Apr 19, 2012, at 11:30 PM, "Jameson Ernst" <j.patrick.ernst gmail.com> wr=
ote:

 On Thursday, 19 April 2012 at 19:37:28 UTC, Nick Sabalausky wrote:
 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 Hi,
=20
 just wanted to announce that Sony has finally made the new Playstation
 Vita SDK available, as we were discussing some months ago.
=20
 http://www.playstation.com/pss/index_e.html
=20
 The gamming industry seems to be slowing moving to C#. Would we still
 be able to convince developers to move to D instead?
=20

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 s=


 that rendered most new languages impotent, there was no real alternative t=


 C++. So, I suspect, that's why they made the compromise of going with C#.=


=20
 But D is *real* systems language, unlike C#. And frankly, it beats the sn=


 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 th=


 more I used both, the more I got fed up with C#'s dumb limitations and MS=


 disinterest in addressing them, and the more I liked D.
=20
 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 co=

or 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 i= n D.
=20
 I think there's more to it though. I mentioned this in the Fibers thread, b=

ity of coroutines in game logic cannot be overstated. Being able to do thing= s like:
=20
 {
    WalkTo(pos);
    WaitForSeconds(3);
    FireMyLaser(target);
 }
=20
 And have it JUST WORK like you want is huge. You can get this by delegatin=

JIT territory. Expressing this kind of thing in the native language itself w= ould be ideal.
=20
 I think D is sitting on a game dev goldmine with core.thread.Fiber. Especi=

ntity coroutines active and being able to load balance them across all your c= ores with a taskpool would be amazing. I'm just worried that since Fiber see= ms to be such a low-key feature that it won't survive a refactor of the libr= ary 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 con= ference a few years ago. It's on video, if you're interested in looking for i= t.=20=
Apr 20 2012
prev sibling next sibling parent Manu <turkeyman gmail.com> writes:
--f46d043bdf20e8e0e804be1d65b6
Content-Type: text/plain; charset=UTF-8

On 20 April 2012 17:28, Sean Kelly <sean invisibleduck.org> wrote:

 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.

Awesome , I certainly am. Did he have a working implementation? --f46d043bdf20e8e0e804be1d65b6 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div class=3D"gmail_quote">On 20 April 2012 17:28, Sean Kelly <span dir=3D"= ltr">&lt;<a href=3D"mailto:sean invisibleduck.org">sean invisibleduck.org</= a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0= 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class=3D"HOEnZb"><div class=3D"h5">For what it&#39;s worth, Mikola Lys= enko did a talk on coroutines in D at a D conference a few years ago. It&#3= 9;s on video, if you&#39;re interested in looking for it.</div></div></bloc= kquote> <div><br></div><div>Awesome , I certainly am. Did he have a working impleme= ntation?</div></div> --f46d043bdf20e8e0e804be1d65b6--
Apr 20 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
--Apple-Mail-98D1EEE0-D04F-4835-AA3F-6C466440A88B
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

On Apr 20, 2012, at 7:49 AM, Manu <turkeyman gmail.com> wrote:

 On 20 April 2012 17:28, Sean Kelly <sean invisibleduck.org> wrote:
 For what it's worth, Mikola Lysenko did a talk on coroutines in D at a D c=

r it.
=20
 Awesome , I certainly am. Did he have a working implementation?

Yup. I dunno if his website is still up (assertfalse IIRC) but he's still re= achable. Working on a masters/phd I believe.=20= --Apple-Mail-98D1EEE0-D04F-4835-AA3F-6C466440A88B Content-Transfer-Encoding: 7bit Content-Type: text/html; charset=utf-8 <html><head></head><body bgcolor="#FFFFFF"><div>On Apr 20, 2012, at 7:49 AM, Manu &lt;<a href="mailto:turkeyman gmail.com">turkeyman gmail.com</a>&gt; wrote:<br><br></div><div></div><blockquote type="cite"><div><div class="gmail_quote">On 20 April 2012 17:28, Sean Kelly <span dir="ltr">&lt;<a href="mailto:sean invisibleduck.org">sean invisibleduck.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class="HOEnZb"><div class="h5">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.</div></div></blockquote> <div><br></div><div>Awesome , I certainly am. Did he have a working implementation?</div></div> </div></blockquote><br><div>Yup. I dunno if his website is still up (assertfalse IIRC) but he's still reachable. Working on a masters/phd I believe.&nbsp;</div></body></html> --Apple-Mail-98D1EEE0-D04F-4835-AA3F-6C466440A88B--
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 03:42:01 UTC, Andrei Alexandrescu 
wrote:
 On 4/19/12 3:05 PM, H. S. Teoh wrote:

 This is interesting. We use C++ at Facebook all over the place, 
 and gainfully. If we were to use C, we'd have major 
 difficulties with e.g. containers. The thought of using a 
 hashtable in C... ouch.

 Andrei

I did use a C hashtable (the kazlib) implementation in an embedded product, once. I think in some blog I always forget (one interested in D), the author compares many implementations of hashtable in C and C++, and provides his own.
Apr 20 2012
prev sibling next sibling parent reply "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Thu, Apr 19, 2012 at 07:24:48PM -0400, Nick Sabalausky wrote:
 "Sean Kelly" <sean invisibleduck.org> wrote in message 
 news:mailman.1942.1334874732.4860.digitalmars-d puremagic.com...
On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:


 Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3
 or 4, and some Japanese stuff), I see the mainstream industry as
 mostly a "Pixar-wannabe high-def-animation factory" these days.
 They don't care about gameplay anymore, just storytelling,
 animation and emulating Hollywood.

I've switched from calling those games to calling them interactive cinematic experiences. Some are actually enjoyable from a story perspective, but overall I think they're an evolutionary dead end for the game industry.=


Wasn't that all the hype in the early days where games like that were called "interactive movies"? I remember Wing Commander was one of those (or at least, it tried to be). But at least there was actual *gameplay* going on in WC (you actually get to fly a spaceship and shoot enemies down), as opposed to just point-and-click, choose-your-own-story, see-how-many-permutations-of-the-same-old-video-clips-you-can-get. [...]
 I'll take another game with a "Save the princess" backstory, or even
 *no* story at all, over a game driven start-to-finish by a
 less-than-spectacular story any day. Hell, it's much better replay
 value like that anyway: Listening to the same story over and over
 really kills replayability.

Especially when said story tries SO hard at being convincingly emotional but totally falls flat, because it's the 150th time you're playing the game and you've found out and exploited a dozen plot holes and game sequencing bugs that allow you to trigger game events out of sequence, so that the video clips just seem totally out-of-context.
 Does anyone care why MegaMan's trying to defeat Wily? Or his
 "emotional growth and struggle" while doing it? Hell no, they just
 enjoy doing it.

Exactly. Any "emotional growth and struggle" can only be emergent from the game mechanics, not from a railroaded "you have to do things this way 'cos that's how you're supposed to" plot dreamed up by some script writer who got up on the wrong side of bed that morning. It's an oxymoron, really. The only *real* "emotional growth" a gamer is going to experience is the gratification from totally pwning the game mechanics to get the highest score/credits/shortest time/what-have-you. At the end of the day, it's the game mechanic that really matters. I mean, that's the whole reason you're playing in the first place, right? If I just wanted to watch a bunch of video clips, I'd be on youtube instead. T -- The problem with the world is that everybody else is stupid.
Apr 20 2012
parent "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"H. S. Teoh" <hsteoh quickfur.ath.cx> wrote in message 
news:mailman.1984.1334953116.4860.digitalmars-d puremagic.com...
 [...]
 I'll take another game with a "Save the princess" backstory, or even
 *no* story at all, over a game driven start-to-finish by a
 less-than-spectacular story any day. Hell, it's much better replay
 value like that anyway: Listening to the same story over and over
 really kills replayability.

Especially when said story tries SO hard at being convincingly emotional but totally falls flat, because it's the 150th time you're playing the game and you've found out and exploited a dozen plot holes and game sequencing bugs that allow you to trigger game events out of sequence, so that the video clips just seem totally out-of-context.

Yup
 Does anyone care why MegaMan's trying to defeat Wily? Or his
 "emotional growth and struggle" while doing it? Hell no, they just
 enjoy doing it.

Exactly. Any "emotional growth and struggle" can only be emergent from the game mechanics, not from a railroaded "you have to do things this way 'cos that's how you're supposed to" plot dreamed up by some script writer

Exactly.
 At the end of the day, it's the game mechanic that really matters. I
 mean, that's the whole reason you're playing in the first place, right?
 If I just wanted to watch a bunch of video clips, I'd be on youtube
 instead.

Exactly again.
 T

 -- 
 The problem with the world is that everybody else is stupid.

And another "exactly" ;) (Hmm, I guess this was a useless response...)
Apr 20 2012
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 20, 2012 at 02:45:51PM +0200, SomeDude wrote:
[...]
 Oh yeah, I've seen that story too in a couple of other places. C++
 seems to make exceptionnally easy for "mad coders" to screw up a
 whole system with overengineered pieces of crap. One of my
 colleagues spent more than a year rewriting a system that turned
 into a black box that nobody could maintain.
 
 My opinion is, when a team works in this language, code reviews
 should be an obligation, else there is always a guy like that, who
 has his genius idea that nobody else understands and puts his crap
 all over the place. Basically, the only piece of C++ software I've
 seen that never became a huge piece of steaming crap was a system
 that was systematically code reviewed by the main software architect
 and a couple of highly skilled engineers.

The problem is, code review is a full-time job if it is to be done properly. Often it just deteriorates into a side-job: senior coder A reviews junior coder B's code, but coder A has a pending deadline that week and has lots of complex code issues to tackle, so there's no time to read through everything that coder B wrote. So just glance over it briefly, if there are no blatant problems, approve it. It gets worse if senior coder A himself doesn't have a good grasp of good coding practices, but got to where he is because he's just very good at last-minute patchwork hacks that makes everything "work". Seniority gives him code review rights, but he's really not qualified for the job.
 I suspect D is not much better on this topic, it's possible to write
 extremely complex code with it too. Actually, it's possible to write
 complex and unmaintaineble stuff in any language (even in Python),
 but I believe the more complex the language, the easier it is to
 screw things up and the more important code reviews are.

Problem is, good coders are hard to come by. It's even harder to distinguish between coders who succeed because they practise sound coding principles, and coders who "succeed" because they're good at hacking things at the last minute to make them work.
From a business perspective, the latter are actually (implicitly)

and cautious about making changes when there's an impending deadline of doom imposed by irate customers who want the product shipped by last week? No, they want coders who can make it work, right now, no matter what the means. Who cares about the consequences, what's important is Big Customer A's trivial bug must be fixed This Very Minute before we lose the multi-million dollar contract to a competitor. Use the ugliest, dirtiest, cruelest hacks if you must, the ends justify the means. Is it any wonder that so many large commercial software projects are crap? But anyway, I'm veering off-topic. The point is that C++ has too many features that are unsafe by default, or require the programmer to manually do too many things before it works correctly. Like that dreaded ctor, copy ctor, and assignment operator trio. For the most trivial of classes you need to (at least) provide boilerplate versions of all three, all correctly implemented. Forget some minor detail? No problem, the class will still "mostly" work. Any effects are hard to notice. Until somebody tries to do something that you didn't anticipate, and suddenly there are breakages everywhere. This is one of the many areas where D shines: the default behaviour is safe and generally correct, and you add more code if you want to fine tune stuff. Not like C++ where failing to add certain pieces of boilerplate code results in broken-by-default behaviour. T -- Latin's a dead language, as dead as can be; it killed off all the Romans, and now it's killing me! -- Schoolboy
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 20:17:39 UTC, H. S. Teoh wrote:
 At the end of the day, it's the game mechanic that really 
 matters. I
 mean, that's the whole reason you're playing in the first 
 place, right?
 If I just wanted to watch a bunch of video clips, I'd be on 
 youtube
 instead.


 T

Yup. What is the most played game among redditors ? Minecraft !
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 20:55:58 UTC, H. S. Teoh wrote:
 The problem is, code review is a full-time job if it is to be 
 done
 properly. Often it just deteriorates into a side-job: senior 
 coder A
 reviews junior coder B's code, but coder A has a pending 
 deadline that
 week and has lots of complex code issues to tackle, so there's 
 no time
 to read through everything that coder B wrote. So just glance 
 over it
 briefly, if there are no blatant problems, approve it.

Actually, a good code review should last about an hour, no more. Studies show that in average, the great majority of problems are seen in this hour, which is the point of diminishing return. Moreover, it's not useful to have the code reviewed by more than one person. What that means is, the change reviewed cannot be more than 300-400 lines long, else, the change is probably too big anyway. But what's important is, the reviewer must be up to the task.
 It gets worse if senior coder A himself doesn't have a good 
 grasp of
 good coding practices, but got to where he is because he's just 
 very
 good at last-minute patchwork hacks that makes everything 
 "work".
 Seniority gives him code review rights, but he's really not 
 qualified
 for the job.

If the Senior programmer doesn't have good coding practices, then the entire exercise is counter productive. So basically, code riew must be done by trusted persons. That means about one out of five developers in a team.
 Problem is, good coders are hard to come by. It's even harder to
 distinguish between coders who succeed because they practise 
 sound coding principles, and coders who "succeed" because 
 they're good at hacking things at the last minute to make them 
 work.
 T

Yeah, in the end, it's a question of trust.
Apr 20 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
On Apr 20, 2012, at 1:18 PM, H. S. Teoh wrote:

 On Thu, Apr 19, 2012 at 07:24:48PM -0400, Nick Sabalausky wrote:
 "Sean Kelly" <sean invisibleduck.org> wrote in message=20
 news:mailman.1942.1334874732.4860.digitalmars-d puremagic.com...
 On Apr 19, 2012, at 3:20 PM, Nick Sabalausky wrote:


 Yea, pretty much. With a few exceptions (Splinter Cell 1 though...3
 or 4, and some Japanese stuff), I see the mainstream industry as
 mostly a "Pixar-wannabe high-def-animation factory" these days.
 They don't care about gameplay anymore, just storytelling,
 animation and emulating Hollywood.

I've switched from calling those games to calling them interactive cinematic experiences. Some are actually enjoyable from a story perspective, but overall I think they're an evolutionary dead end =



 the game industry.=3D


Wasn't that all the hype in the early days where games like that were called "interactive movies"? I remember Wing Commander was one of =

 (or at least, it tried to be). But at least there was actual =

 going on in WC (you actually get to fly a spaceship and shoot enemies
 down), as opposed to just point-and-click, choose-your-own-story,
 see-how-many-permutations-of-the-same-old-video-clips-you-can-get.

I don't see many parallels between Wing Commander and modern cinematic = games. WC was really a campaign-oriented space combat game, while in = modern cinematic games the gameplay feels bolted on as an afterthought. = The difference in Wing Commander was that the game had RPG elements as = well, so there was a lot more up-front story than most other = campaign-oriented games. Actually, Jagged Alliance was one of the best = games in this vein, as the depth of simulation was really staggering = even by today's standards.=
Apr 20 2012
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Fri, Apr 20, 2012 at 06:40:39PM -0400, Nick Sabalausky wrote:
 "H. S. Teoh" <hsteoh quickfur.ath.cx> wrote in message 
 news:mailman.1984.1334953116.4860.digitalmars-d puremagic.com...

 The problem with the world is that everybody else is stupid.

And another "exactly" ;) (Hmm, I guess this was a useless response...)

lol... well, that quote was supposed to be ironic / self-contradictory / self-fulfilling. Sorta like "People tell me I'm skeptical, but I don't believe it!" T -- Philosophy: how to make a career out of daydreaming.
Apr 20 2012
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 20/04/12 05:42, Andrei Alexandrescu wrote:
 This is interesting. We use C++ at Facebook all over the place, and gainfully.
 If we were to use C, we'd have major difficulties with e.g. containers. The
 thought of using a hashtable in C... ouch.

Out of curiosity ... how much D do you use? :-)
Apr 20 2012
prev sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
Just noticed that Microsoft is planning to start using C# for 
systems programming as well

https://careers.microsoft.com/jobdetails.aspx?jid=76831

Who knows what they are planning to do...

On Saturday, 21 April 2012 at 00:09:24 UTC, Alex Rønne Petersen 
wrote:
 On 20-04-2012 15:16, Paulo Pinto wrote:
 Actually when I read Singularity papers I keep thinking to 
 myself that D
 could
 be Sing#. In the sense that both share many common features.

 Thanks for the xomb link.

 --
 Paulo

 "Alex Rønne Petersen" wrote in message
 news:jmr1vd$1m25$1 digitalmars.com...

 On 20-04-2012 08:43, Paulo Pinto wrote:
 Well, C# can also be real systems programming language, see 
 Singularity.

No, this is actually a common misconception. Singularity does *not* use plain C#. It uses Sing#, which is an extension of Spec# adding message-passing, compile-time reflection, and safe manual memory management features. Spec# is a version of C# heavily based on design-by-contract (I'd argue its DbC is far superior to D's in fact). Plain C# out of the box is not useful for systems-level programming, and especially not in a kernel.
 And native code compilers are also available (Bartok, Mono 
 AOT, NGEN).

 D names itself a system programming language, but I am yet to 
 see any OS
 coded on it. Without system programming examples, it becomes 
 just another
 application level language.

https://github.com/xomboverlord/xomb
 On the other hand I confess this is a very hard task, as most 
 of systems
 programming
 languages that manage to exist as such (PL/I, Ada, C, C++, 
 Mac Pascal),
 did so because
 there was an OS vendor that made use of them.

 Now that I mention this, does anyone know if D is being used 
 as research
 language in any operating system department in some 
 university? I
 remember
 there were some posts about it long time ago.

 What I see going for D in terms of language features:

 - scope
 - compile time metaprogramming
 - mixin as a kind of macro mechanism
 - inline assembler (this one might be a bit debatable)
 - delegation via subtyping
 - all available implementations compile straight to native 
 code

 --
 Paulo


 "Nick Sabalausky" wrote in message 
 news:jmpphn$20s9$1 digitalmars.com...

 "Paulo Pinto" <pjmlp progtools.org> wrote in message
 news:jmpl39$1oa1$1 digitalmars.com...
 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.


There's no doubt that D gets very close to being able to replace Sing#. The thing is just that Sing# was designed, from day one, to be OS-agnostic, i.e. compile to plain machine code, and to only rely on the very small HAL in Singularity.

Apr 20 2012
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Thu, Apr 19, 2012 at 03:37:38PM -0400, Nick Sabalausky wrote:
 "Paulo Pinto" <pjmlp progtools.org> wrote in message 
 news:jmpl39$1oa1$1 digitalmars.com...

 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#.

Yeah, I've been working with C++ for almost 2 decades, and I really can't say I'd recommend it for new projects. At my day job, for example, we actually migrated from C++ back to plain old C, due to an incredibly over-engineered C++ codebase that was slow, bloated, and unmaintainable. It sounds laughable to the casual observer, but I have to say that there was actually a lot gained by this migration. We are much more productive with the new C-based system than C++. There are just too many ways to write bad code in C++. C makes everything simple and clear, if a bit tedious at times (due to basically partially reimplementing a class system in C). Simply put, C++ was a good idea, but it simply could not live up to its promises in real-life projects. In my own personal projects, I've discovered that C++ is best used as a "C with classes" language, not a true OO language. Its OO features are just so broken that anything beyond the simplest textbook examples are rife with all sorts of unnecessary complications, hacks, and workarounds that dramatically reduces programmer productivity. I used to say that if you wanted real OO, you should be looking at Java or Eiffel (or something along those lines), not 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.

I've never programmed in C#, so I can't really objectively compare C# and D. I *will* say, though, that in many ways D feels like "C++ done right", or "what C++ should have been". In that sense, I think the factors that drove game devs to abandon C++ should be what drives them to adopt 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.

Well, the Manu's of the world are still clamoring for some missing features in D that will finally convince them to adopt D. :-) But IMAO, indie gaming is where it's at these days. True creativity has left commercial games since id's DOOM days. T -- I don't trust computers, I've spent too long programming to think that they can get anything right. -- James Miller
Apr 19 2012
prev sibling next sibling parent "F i L" <witte2008 gmail.com> writes:
On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto wrote:
 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?

 --
 Paulo

Yes I believe D will eventually rule in this area, if some of it's weaknesses are addressed. People are moving towards C# because it's easy and natural to use, while sacrificing very little performance or power (see System.Runtime.InteropServices : Marshal). Plus, your code is very portable. D is even more this way. It has very nice syntax, and a wealth of productive features for modeling and debugging. What it lacks is good (bug-free, full code-completetion, etc) IDE support, cross platform compiling (read Android, iOS), and proper documentation (it's getting there). Plus I think a few semantic issues could be address which would make D easier to swallow at large, but I won't reiterate what I've already said on the forums elsewhere. At the end of the day, it's about what features and benefits a language offers to developers. How will switching to D make you more productive? I think that pound for pound, D offers more usable core features and control than C# does. This is why I'm here. However, D can't compete with the level of support C# has at the moment. I have confidence D will overcome, but it's an uphill battle.
Apr 19 2012
prev sibling next sibling parent reply "SomeDude" <lovelydear mailmetrash.com> writes:
On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto wrote:
 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?

 --
 Paulo

What I don't get is why no large software company is backing up D right now. It's quite clear by now that D is by far the language that has the best feature set to be the successor to C++. If IBM for example was helping D like they did for eclipse, the traction would be huge and the toolchain would stabilize so much faster. :(
Apr 20 2012
next sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
It seems the major companies are all backing proprietary languages for their
systems. Similar to what used to be the case in the mainframe era, where 
each
OS had its own language, kind of.

Which from their point of view (not ours, of course) makes sense, as it 
bounds
applications to their OS.

--
Paulo

"SomeDude"  wrote in message news:hzksprcfedvmvowyxmtb forum.dlang.org...

On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto wrote:
 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?

 --
 Paulo

What I don't get is why no large software company is backing up D right now. It's quite clear by now that D is by far the language that has the best feature set to be the successor to C++. If IBM for example was helping D like they did for eclipse, the traction would be huge and the toolchain would stabilize so much faster. :(
Apr 20 2012
prev sibling parent Paulo Pinto <pjmlp progtools.org> writes:
Am 20.04.2012 19:43, schrieb Sean Kelly:
 On Apr 20, 2012, at 8:09 AM, SomeDude wrote:
 IBM has largely contributed to the development of the eclipse environment. In
fact, it started as one of their products, Visual Age, that they open sourced,
and this move was very successful.

Eclipse started as VisualAge? No wonder I hate it so much :-) That was a powerful IDE, but utterly impenetrable.

Not really. The first Visual Age was for Smalltalk, then IBM created Visual Age versions for C++ and Java. But they were not sharing much code, so when the time came to rewrite Visual Age, Eclipse was born. -- Paulo
Apr 20 2012
prev sibling next sibling parent Manu <turkeyman gmail.com> writes:
--20cf3074da54d0936b04be1c7d23
Content-Type: text/plain; charset=UTF-8

On 20 April 2012 15:30, SomeDude <lovelydear mailmetrash.com> wrote:

 On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto wrote:

 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<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?

 --
 Paulo

What I don't get is why no large software company is backing up D right now. It's quite clear by now that D is by far the language that has the best feature set to be the successor to C++.

It's a bit of a chicken and egg problem, but I suspect there is interest :) If IBM for example was helping D like they did for eclipse, the traction
 would be huge and the toolchain would stabilize so much faster. :(

What exactly would mainstream developers do to stimulate such traction, and stabilise the toolchain as you are suggesting? --20cf3074da54d0936b04be1c7d23 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div class=3D"gmail_quote">On 20 April 2012 15:30, SomeDude <span dir=3D"lt= r">&lt;<a href=3D"mailto:lovelydear mailmetrash.com">lovelydear mailmetrash= .com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"ma= rgin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class=3D"im">On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto w= rote:<br> </div><div><div class=3D"h5"><blockquote class=3D"gmail_quote" style=3D"mar= gin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Hi,<br> <br> just wanted to announce that Sony has finally made the new Playstation<br> Vita SDK available, as we were discussing some months ago.<br> <br> <a href=3D"http://www.playstation.com/pss/index_e.html" target=3D"_blank">h= ttp://www.playstation.com/<u></u>pss/index_e.html</a><br> <br> The gamming industry seems to be slowing moving to C#. Would we still<br> be able to convince developers to move to D instead?<br> <br> --<br> Paulo<br> </blockquote> <br></div></div> What I don&#39;t get is why no large software company is backing up D right= now. It&#39;s quite clear by now that D is by far the language that has th= e best feature set to be the successor to C++.<br></blockquote><div><br> </div><div>It&#39;s a bit of a chicken and egg problem, but I suspect there= is interest :)</div><div><br></div><div><br></div><blockquote class=3D"gma= il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef= t:1ex"> If IBM for example was helping D like they did for eclipse, the traction wo= uld be huge and the toolchain would stabilize so much faster. :(<br> </blockquote></div><br><div>What exactly would mainstream developers do to = stimulate such traction, and stabilise the toolchain as you are suggesting?= </div> --20cf3074da54d0936b04be1c7d23--
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 13:44:55 UTC, Manu wrote:
 It's a bit of a chicken and egg problem, but I suspect there is 
 interest :)

Maybe if Walter and Andrei were to define some sort of consortium like there is for Java, companies would be interested in participating in the development ? I have no idea how it would look like though, as that would mean a lot more organization and overhead. We clearly don't work like that right now.
 If IBM for example was helping D like they did for eclipse, the 
 traction
 would be huge and the toolchain would stabilize so much 
 faster. :(

What exactly would mainstream developers do to stimulate such traction, and stabilise the toolchain as you are suggesting?

IBM has largely contributed to the development of the eclipse environment. In fact, it started as one of their products, Visual Age, that they open sourced, and this move was very successful.
Apr 20 2012
prev sibling next sibling parent Manu <turkeyman gmail.com> writes:
--f46d043be1d08f9e6c04be1e14b2
Content-Type: text/plain; charset=UTF-8

On 20 April 2012 18:09, SomeDude <lovelydear mailmetrash.com> wrote:

 On Friday, 20 April 2012 at 13:44:55 UTC, Manu wrote:

 It's a bit of a chicken and egg problem, but I suspect there is interest
 :)

Maybe if Walter and Andrei were to define some sort of consortium like there is for Java, companies would be interested in participating in the development ? I have no idea how it would look like though, as that would mean a lot more organization and overhead. We clearly don't work like that right now.

How does that work in Java's case? It doesn't seem to me that there is the manpower here to do that. If IBM for example was helping D like they did for eclipse, the traction
 would be huge and the toolchain would stabilize so much faster. :(

and stabilise the toolchain as you are suggesting?

IBM has largely contributed to the development of the eclipse environment. In fact, it started as one of their products, Visual Age, that they open sourced, and this move was very successful.

Okay so you're talking about mega-companies who can afford to invest significant time and money into the language? I think that's very unlikely to happen these days. But it would still be nice to be attractive to mid-large sized businesses to get their hands dirty. The most significant factor here is to see these entities as customers, and not necessarily community participants or contributors. Is the community ready to have those sorts of users? Their advertising potential may be valuable in bringing other interest and contributors into the community, but other than that, what can those entities bring to the community that isn't expressed in terms of manpower? --f46d043be1d08f9e6c04be1e14b2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div class=3D"gmail_quote">On 20 April 2012 18:09, SomeDude <span dir=3D"lt= r">&lt;<a href=3D"mailto:lovelydear mailmetrash.com">lovelydear mailmetrash= .com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"ma= rgin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class=3D"im">On Friday, 20 April 2012 at 13:44:55 UTC, Manu wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> It&#39;s a bit of a chicken and egg problem, but I suspect there is interes= t :)<br> </blockquote> <br></div> Maybe if Walter and Andrei were to define some sort of consortium like ther= e is for Java, companies would be interested in participating in the develo= pment ? I have no idea how it would look like though, as that would mean a = lot more organization and overhead. We clearly don&#39;t work like that rig= ht now.<br> </blockquote><div><br></div><div>How does that work in Java&#39;s case? It = doesn&#39;t seem to me that there is the manpower here to do that.</div><di= v><br></div><div><br></div><blockquote class=3D"gmail_quote" style=3D"margi= n:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div class=3D"im">If IBM for example was hel= ping D like they did for eclipse, the traction<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> would be huge and the toolchain would stabilize so much faster. :(<br> <br> </blockquote> <br></div><div class=3D"im"> What exactly would mainstream developers do to stimulate such traction, and= <br> stabilise the toolchain as you are suggesting?<br> </div></blockquote> <br> IBM has largely contributed to the development of the eclipse environment. = In fact, it started as one of their products, Visual Age, that they open so= urced, and this move was very successful.<br></blockquote><div><br></div> <div>Okay so you&#39;re talking about mega-companies who can afford to inve= st significant time and money into the language?</div><div>I think that&#39= ;s very unlikely to happen these days. But it would still be nice to be att= ractive to mid-large sized businesses to get their hands dirty.</div> <div>The most significant factor here is to see these entities as customers= , and not necessarily community participants or contributors. Is the commun= ity ready to have those sorts of users?</div><div>Their advertising potenti= al may be valuable in bringing other interest and contributors into the com= munity, but other than that, what can those entities bring to the community= that isn&#39;t expressed in terms of manpower?</div> </div> --f46d043be1d08f9e6c04be1e14b2--
Apr 20 2012
prev sibling next sibling parent Sean Kelly <sean invisibleduck.org> writes:
On Apr 20, 2012, at 8:09 AM, SomeDude wrote:
=20
 IBM has largely contributed to the development of the eclipse =

that they open sourced, and this move was very successful. Eclipse started as VisualAge? No wonder I hate it so much :-) That was = a powerful IDE, but utterly impenetrable.=
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 15:38:40 UTC, Manu wrote:
 On 20 April 2012 18:09, SomeDude <lovelydear mailmetrash.com> 
 wrote:

 On Friday, 20 April 2012 at 13:44:55 UTC, Manu wrote:

 It's a bit of a chicken and egg problem, but I suspect there 
 is interest
 :)

Maybe if Walter and Andrei were to define some sort of consortium like there is for Java, companies would be interested in participating in the development ? I have no idea how it would look like though, as that would mean a lot more organization and overhead. We clearly don't work like that right now.

How does that work in Java's case? It doesn't seem to me that there is the manpower here to do that.

Through the Java Community Process (http://jcp.org). Basically, it's where the proposals for APIs are reviewed. It started after many people found that the Sun APIs sucked (basically, Sun didn't have the manpower to follow all the requests of their users) and founded the Apache and Spring projects to compensate for some missing parts (the logging API for instance). Afterwards, key developers of those open source projects became active part of the JCP, and companies followed. There is the list of JSR: http://jcp.org/en/jsr/all You can see there is quite a lot of people involved in each specification, a leader and then a review group formed of a number of experts representing each interested party.
 Okay so you're talking about mega-companies who can afford to 
 invest significant time and money into the language?

Yes.
 I think that's very unlikely to happen these days. But it would 
 still be
 nice to be attractive to mid-large sized businesses to get 
 their hands dirty.

The Oracle-Google trial is interesting, as if Oracle wins, many companies would be happy not to have to pay huge money to bastard Ellison just to use the Java API. If there is an alternative, I think they would be interested. Right now, the alternative is Microsoft...
 The most significant factor here is to see these entities as 
 customers, and
 not necessarily community participants or contributors. Is the 
 community ready to have those sorts of users?

There is no chance any big company would use D without actively contributing to its stabilization beforehand, because they can't afford to have their systems broken every other release.
 Their advertising potential may be valuable in bringing other 
 interest and
 contributors into the community, but other than that, what can 
 those
 entities bring to the community that isn't expressed in terms 
 of manpower?

Well, I think manpower is already a very valuable help, don't you think ? If some smart people worked all day on the compiler and libraries, everything would go much faster.
Apr 20 2012
prev sibling next sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 20 April 2012 at 18:11:45 UTC, SomeDude wrote:
 Through the Java Community Process (http://jcp.org). Basically, 
 it's where the proposals for APIs are reviewed. It started 
 after many people found that the Sun APIs sucked (basically, 
 Sun didn't have the manpower to follow all the requests of 
 their users) and founded the Apache and Spring projects to 
 compensate for some missing parts (the logging API for 
 instance).
 Afterwards, key developers of those open source projects became 
 active part of the JCP, and companies followed.

AFAIK has nothing to do with Apache and Spring, and the JCP started before these open source projects. What I wanted to stress though, was that many important and successful APIs have been developed after open source developments, and were designed by members of these communities (several of which were employed by big companies afterwards). An example being the "Enterprise JavaBeans", which were enterprise crap when designed by Sun (EJB1 and EJB2), and they finally got it right after the lead developer of the Hibernate project came onboard.
Apr 21 2012
prev sibling next sibling parent "so" <so so.so> writes:
On Friday, 20 April 2012 at 12:30:19 UTC, SomeDude wrote:

 What I don't get is why no large software company is backing up 
 D right now. It's quite clear by now that D is by far the 
 language that has the best feature set to be the successor to 
 C++.

Answer is i think quite simple. How many C++ developers do you think use templates more than like "<T>min(Ta){ reuturn a<b?a:b }"? I don't believe it is more than 5%. We first need to show how powerfull and accessible templates/ctfe in D. We need to stop saying "D does templates better than C++". This is huge underestimation. By stating it this way we are just targetting like 1% of the C++ audience. We need to teach people how to do templates. Starting with Boost community. If D can't absorb Boost community. There is no hope in neither D nor Boost, we should just stop!
 If IBM for example was helping D like they did for eclipse, the 
 traction would be huge and the toolchain would stabilize so 
 much faster. :(

Apr 21 2012
prev sibling next sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
That is usually one of the arguments Go people use against 
generics.

I tend to call C++, D, C#, Ada and other languages with powerful
abstraction mechanisms as programming languages for people with
brains.

On my huge entreprise projects, I always despair with the
amount of knowledge some developers have.

Every time I see certain types of enterprise code, I cannot
even imagine how those developers would write in C, just to
give an example.

Me I prefer to use languages with proper expression mechanisms,
like D. Unfortunately the big guys prefer languages that allow
for replaceable programmers.

--
Paulo

On Saturday, 21 April 2012 at 08:49:15 UTC, so wrote:
 On Friday, 20 April 2012 at 12:30:19 UTC, SomeDude wrote:

 What I don't get is why no large software company is backing 
 up D right now. It's quite clear by now that D is by far the 
 language that has the best feature set to be the successor to 
 C++.

Answer is i think quite simple. How many C++ developers do you think use templates more than like "<T>min(Ta){ reuturn a<b?a:b }"? I don't believe it is more than 5%. We first need to show how powerfull and accessible templates/ctfe in D. We need to stop saying "D does templates better than C++". This is huge underestimation. By stating it this way we are just targetting like 1% of the C++ audience. We need to teach people how to do templates. Starting with Boost community. If D can't absorb Boost community. There is no hope in neither D nor Boost, we should just stop!
 If IBM for example was helping D like they did for eclipse, 
 the traction would be huge and the toolchain would stabilize 
 so much faster. :(


Apr 21 2012
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Sat, Apr 21, 2012 at 06:34:40PM +0200, Paulo Pinto wrote:
 That is usually one of the arguments Go people use against generics.
 
 I tend to call C++, D, C#, Ada and other languages with powerful
 abstraction mechanisms as programming languages for people with
 brains.
 
 On my huge entreprise projects, I always despair with the amount of
 knowledge some developers have.

Thanks, now I can stop feeling like I'm the only one who feels that way when I look at some ... shall I say, utterly atrocious code? ... in enterprise projects at work.
 Every time I see certain types of enterprise code, I cannot even
 imagine how those developers would write in C, just to give an
 example.

You're lucky. I get to deal with _C code_ written by these kinds of developers. Like recently when I reviewed some code to find that it was using *string operations* for what should have been bitwise operations (i.e., convert to string, do string ops, convert back). Or like some time ago when we had to deal with a particular set of static tables that had been copy-n-pasted EVERYWHERE, *and* reimplemented several times over (incompletely and with gratuitously incompatible representations), all mutually inconsistent but treated as though they were the same table. Just don't get me started on C++ code that had copy-n-pasted excerpts from C code that broke in subtle ways because of language differences that obviously the person who did it was completely oblivious to.
 Me I prefer to use languages with proper expression mechanisms, like
 D. Unfortunately the big guys prefer languages that allow for
 replaceable programmers.

Y'know, I'm starting to actually be glad that there's somewhere to send those replaceable programmers instead of having them write more horrendous C code than they already are. Send them to a Java shop, problem solved. Reassign them to the PHP team and let them wreak havoc there. Just keep them away from the mission-critical low-level code that can't afford to break, no matter what. T -- Meat: euphemism for dead animal. -- Flora
Apr 21 2012
prev sibling next sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
On Saturday, 21 April 2012 at 19:03:26 UTC, H. S. Teoh wrote:
 On Sat, Apr 21, 2012 at 06:34:40PM +0200, Paulo Pinto wrote:
 Me I prefer to use languages with proper expression 
 mechanisms, like
 D. Unfortunately the big guys prefer languages that allow for
 replaceable programmers.

Y'know, I'm starting to actually be glad that there's somewhere to send those replaceable programmers instead of having them write more horrendous C code than they already are. Send them to a Java shop, problem solved. Reassign them to the PHP team and let them wreak havoc there. Just keep them away from the mission-critical low-level code that can't afford to break, no matter what. T

One of the reasons I am planning to move away from JVM, .NET projects back into native language world, is to get away of such developers. But given your comment, I guess it might be in vain.
Apr 21 2012
prev sibling parent reply "Victor Vicente de Carvalho" <victor.v.carvalho gmail.com> writes:
On Thursday, 19 April 2012 at 18:21:30 UTC, Paulo Pinto wrote:
 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?

 --
 Paulo

As a mobile game developer myself, this was one of my deepest dreams. I'm a silent D follower since it's beginnings, and did some game development back them (D2 didn't existed yet, though). You know, working with mobile game development is very hard, as there is this beast called multi-platforms. We started working with Java+Android, but the lack of performance and the need to port our games to iOS made us take a drastic move and port the engine to C++. This worked ok, but as an avid D guy, almost daily I stumble myself arguing with myself "Oh my god, this would be so clean/beautiful/simple if made with D". So please folks, lets do something to the D-ARM backend. I'm not a compiler expert, but if someone volunteer to mention I'm disposed to learn how to do that as I would love to use D on a game engine. This is (at least to me) a point were D would shine so much (being able to integrate many platforms) that it's visibility could skyrocket to were it deserves. Another option that crossed my mind was to do something like a kickstarter funding to pay someone to do that fulltime. What you guys think?
Apr 22 2012
parent Chad J <chadjoan __spam.is.bad__gmail.com> writes:
On 04/22/2012 03:43 PM, Victor Vicente de Carvalho wrote:
 Another option that crossed my mind was to do something like a
 kickstarter funding to pay someone to do that fulltime. What you guys
 think?

I think "FUCK YES". I would dump money on that. ;)
Apr 23 2012