On Monday, 27 July 2015 at 09:01:33 UTC, Marc Schütz wrote:
On Monday, 27 July 2015 at 02:14:57 UTC, Jonathan M Davis wrote:
AliasTuple in particular has serious issues with it from the
perspective of teaching people what it is an how to use it,
because it has Tuple in its name,
People keep claiming that, but have never posted any evidence.
We know that _TypeTuple_ had issues, but for all we know, the
problem was the "Type" part, not the "Tuple" part.
We have various reports that are consistent and confirm this is
an issue. At this point, this is a repeatable experiment, not an
anecdote anymore. Ignoring repeatable experiment puts you in the
tinfoil hat section of the population. You don't want to be there.
and the construct in question is not actually a tuple
And that's IMO another really bizarre claim. Of course it's a
tuple.
Technically you are right. But in fact, this is NOT what people
EXPECT a tuple to be.
(in addition to being easily confused with
std.typecons.Tuple). This has been shown time and time again
with TypeTuple.
On technical merit, AliasSeq is one of the better choices; it
was what TypeTuple had been changed to prior to the recent,
large discussion on it; and none of the new suggestions are
better enough to win any kind of consensus.
If ease of learning / avoidance of misunderstandings is a goal,
it's clear that AliasSeq is one of the worst choices. The term
"sequence" - in all other related areas of science or
engineering - invokes certain associations that don't fit this
thing at all. This has been brought up by several people, but
it's just getting ignored by the proponents.
It is not ignored. It is simply that alternative proposal also
have issues, and many of them have issues that are worse. No
proposal was significantly better so that it reached any kind of
consensus.
No your personal favorite did not either.
As for Andrei and Walter: From what I've seen, they, too, agree
that AliasSeq is bad. Andrei's critique even started that other
thread.
Yet, nobody came with anything significantly better, so here it
is.