Tuple, TypeTuple, tupleof etc

retard re at tard.com.invalid
Sat Jul 10 14:27:04 PDT 2010


Tue, 06 Jul 2010 16:58:05 -0400, bearophile wrote:

> You have a "tupleof" struct attribute that gives a TypeTuple, and it can
> contain values too and not just types, and then you have a Tuple in
> Phobos that is something similar, but not exactly the same as, a
> TypeTuple. You can return a Tuple but not a TypeTuple. All this is
> messy, D newbies will have troubles. Having two slightly different kinds
> of tuples in a language is bad, but mixing their names in those ways is
> even worse.
> 
> In my dlibs1 what's called Tuple is named Record and what's named
> TypeTuple is named Tuple, this is better because a record is quite
> similar to a struct (as named in Pascal-like languages too), while a
> Tuple is named tuple in the language too.  The name "Record" is bad for
> this purpose because while it's structurally a struct, from an usage
> point of view it's more like a mathematical tuple.
> 
> In the end I still think "Record" and "Tuple" are better names, despite
> their faults. Please think of the newbies :-) Can those two names in
> Phobos2 be changed?

I'm afraid the tuple thing won't change anymore. The topic is a bit 
inflammable in any case. To begin with, the tupleof doesn't even 
necessary return well-typed tuples. And even though

$ strings /path/to/bin/dmd |grep -i tuple

returns matches, they say D doesn't have built-in tuples.


More information about the Digitalmars-d mailing list