Where is 'tuple' in the language reference

Jonathan M Davis jmdavisProg at gmx.com
Sat Aug 6 14:21:08 PDT 2011


On Saturday 06 August 2011 11:10:57 Jacob Carlborg wrote:
> On 2011-08-05 11:10, Jonathan M Davis wrote:
> > On Friday 05 August 2011 08:55:32 Steve Teale wrote:
> >> I see the term used, but I can't find where it is defined.
> > 
> > Probably nowhere. There are no built-in tuples in D. std.typecons.Tuple
> > is probably what you're looking for. It's a struct which defines a
> > tuple. There's also std.typetuple.TypeTuple which is a compile time
> > construct useful in meta- programming. But there is no tuple built into
> > D. There has been some discussion of improving the syntactic sugar with
> > regards to std.typecons.Tuple - either via some additional templates or
> > possibly adding something to the language itself - but that hasn't
> > happened yet, and there are no tuples built into D.
> > 
> > - Jonathan M Davis
> 
> There's .tupleof, I would consider that built-in.

True. I forgot about that one. IIRC, that's effectively a TypeTuple, but 
TypeTuple is in std.typetuple, so I'm not quite sure what the deal with that 
is. Regardless, TypeTuple has always been a bit confusing. It doesn't contain 
just types, and it's not really a tuple. It's probably a bit late in the game 
to give it a better name though. Adding tuples to the language like Bearophile 
keeps pushing for would probably make things even more confusing.

- Jonathan M Davis


More information about the Digitalmars-d mailing list