[Semi OT] Language for Game Development talk

Manu via Digitalmars-d digitalmars-d at puremagic.com
Wed Oct 1 23:22:40 PDT 2014


On 2 October 2014 00:16, bearophile via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
> Max Klyga:
>
>> https://www.youtube.com/watch?v=TH9VCN6UkyQ
>
>
> A third talk (from another person) about related matters:
> https://www.youtube.com/watch?v=rX0ItVEVjHc
>
> He doesn't use RTTI, exceptions, multiple inheritance, STL, templates, and
> lot of other C++ stuff. On the other hand he writes data-oriented code
> manually, the compiler and language give him only very limited help, and the
> code he writes looks twiddly and bug-prone. So why aren't they designing a
> language without most of the C++ stuff they don't use, but with features
> that help them write the data-oriented code they need?

Most gamedev's aren't quite as staunch as Mike Acton. The principle is
there, ingrained in every gamedev, but that doesn't mean we all love
flat C (although lots of us do!).

I've never used RTTI, I've never used exceptions, certainly never use
multiple inheritance, I rarely use templates (in C++)... but I'm still
attracted to D!?
I often find this strange... but not really. In D, I still don't use
RTTI, I still don't use exceptions, I tend to box use of templates
into their own worlds, so I would never use them pervasively (like
phobos).
You'll notice at one point that he talked about using offline text
processing tools to do codegen... this is basically because C's
preprocessor sucks, and C++ templates suck. D templates have proven to
eliminate a lot of those offline tools for me. The code is kept in the
same place, and built using the same tool.
I suspect even Acton would appreciate features like CTFE.
You'll also notice he made repeated reference to build environment
complexity and build times.
D also offers potential compiler advantages, purity, immutable, etc,
which give the optimiser information which it can use to improve
codegen which is awkward in C/C++.


More information about the Digitalmars-d mailing list