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.
