Taking D to GDC Europe - let's make this tight

Ethan Watson via Digitalmars-d digitalmars-d at puremagic.com
Tue Jul 12 08:50:59 PDT 2016


On Tuesday, 12 July 2016 at 14:48:17 UTC, Ola Fosheim Grøstad 
wrote:
> «
> template<typename... Ts> struct make_void { typedef void type;};
> template<typename... Ts> using void_t = typename 
> make_void<Ts...>::type;
> »

Variadic expansion works on my home code in VS2015. But we 
shipped Quantum Break on VS2012. I can use variadic template 
arguments for SFINAE purposes in VS2012, anything more involved 
is virtually unsupported.

On Tuesday, 12 July 2016 at 15:14:39 UTC, Ola Fosheim Grøstad 
wrote:
> Anyway, if you are going to compare languages, use the latest 
> edition of both languages.

I know this makes sense. But by the same token, this is a 
practical talk aimed at people using compilers and toolchains 
that aren't necessarily up to date. What I'd rather do is have 
further examples visible online for C++17 standards to compare 
against. Either way, given Microsoft's rate, the industry will be 
able to use C++17 some time in 2021.

Also of note is that with the binding system we're open sourcing, 
it's meant to just slot in and start people using D alongside 
their C++ codebases.

And further of note, this is to show things that are just plain 
horrible to do in C++. SFINAE whackiness leads me in to talking 
about the is operator in D, which leads in to talking about the 
binding system... It's all about how it directly relates to 
usage, not to what someone can do in six years time.


More information about the Digitalmars-d mailing list