On Friday, 25 April 2014 at 12:54:25 UTC, bearophile wrote:
Dicebot:

std.typecons.Tuple is just a subset of all structs implementing specific behavior. It still acts as struct everywhere when applicable.

A subset is not the same as the whole set.

You are missing something important about what a data structure is. Take a look at your computer science books.

Another example: a dynamic array allows several operations, including append at the end and pop from the end. If I define a Stack data structure based on a dynamic array with just its pop/append/empty/length operations, I have defined a new data structure.

Bye,
bearophile

I am not interested in academic definitions. D is not an academic language (thanks gods!) and expecting it to prioritize formal concepts over mundane pragmatism only leads to frustration. The fact that you can use D rules to emulate certain concept as a user-defined type does not make domain semantics of that type more important than language. It is still a second-class citizen.

You don't change language rules by creating new data structures. Type system still must prevail :)

Reply via email to