On 12/23/2013 12:59 PM, Dicebot wrote:
On Monday, 23 December 2013 at 11:50:08 UTC, Timon Gehr wrote:
This misunderstanding arose because the name of the construct is
misleading.
Can explain this a bit? What makes one miss distinction between language
term and library type?
(It is not a type.)
"At the same time automatic expansion of `TypeTuple` is considered both
unhygienic and not consistent with `std.typecons.Tuple`. Fixing it will
allow some new template algorithms while still keeping "tuple" library
type count at two."
=> the new construct will not auto-expand.
"Why that weird long name, `TemplateArgumentList`
A: Because it is exactly what it is. This name makes it clear that one
may expect from this thing behavior similar to
http://dlang.org/template.html#TemplateArgumentList"
=> the new construct will behave like the built-in
Together this yields that the built-in will not auto-expand.
(Hint: latter is denoted by CamelCase ;))
As is the former. :P
http://dlang.org/template.html#TemplateArgumentList
I think using the name TemplateArgumentList for anything other than a
shallow wrapper around a template argument list does not actually
improve the naming situation.