A Perspective on D from game industry

c0de517e via Digitalmars-d digitalmars-d at puremagic.com
Tue Jun 17 23:54:50 PDT 2014


> On the other hand, we've already given up on a great deal of 
> knowing exactly what a statement does, even in C. How many of 
> us program in assembly anymore? How many of us can even make 
> sense of assembly code?
>
> It is absolutely necessary to move to higher levels of 
> abstraction in order to handle the increasing complexity of 
> modern programs. Proper use of metaprogramming reduces 
> complexity and reduces programming bugs. And yes, the price 
> paid for that is you'll need to put more trust in the 
> metaprogramming tools to "do the right thing" with your 
> intention, just like modern programs now trust the compiler.

Mine is not a campaign to eliminate metaprogramming, not even OO. 
Nor the language post was a critique of D, Rust or Go.

The intention is to make people -aware- of certain issues, to 
then make better motivated choices and not end up thinking stuff 
like this is cool 
http://www.boost.org/doc/libs/1_55_0b1/libs/geometry/doc/html/geometry/design.html 
(sorry, I've linked this a few times now but it's really so 
outrageous I want to punch people in the face - also notice how 
after all that crap the example code manages to forget about 
http://en.cppreference.com/w/cpp/numeric/math/hypot)

Also on a language perspective I'd say that if certain things can 
be part of the type system instead of done via metaprogramming, 
that is much better (boost::lambda vs c++11 lambda) because it 
becomes standard, it can have a specific syntax to give meaning 
to certain statements, tools can recognize it and so on.


More information about the Digitalmars-d mailing list