On Sunday, 3 February 2013 at 07:33:52 UTC, Zach the Mystic wrote:
On Sunday, 3 February 2013 at 03:15:57 UTC, TommiT wrote:
On Sunday, 3 February 2013 at 02:55:44 UTC, Zach the Mystic
wrote:
Well, if you want access to a struct from outside, save
yourself the time and put it outside to begin with. A nested
struct of course is directly related to the entity it finds
itself in. My pet metaphor is struct Dog containing struct
Tail. It would definitely be illogical to put the Tail
outside the Dog.
If Tail is an autonomous struct/class, then it totally makes
sense to put the definition of Tail outside of dog. This
enables you to perhaps use the same Tail in Wolf's and
Hyeena's definitions. If, on the other hand, Tail is not an
autonomous type, but rather, needs to able to wag the dog,
then Tail is really more like a separate logical section
within Dog's definition, i.e. a namespace within Dog.
A dog's tail is not an autonomous struct/class. If you ever had
a dog you would know that. Also, the dog's tail is no namespace
because it contains tail-specific data too.
I'm sorry, I'm just getting allergic to the word "namespace",
since I don't believe any introduction of a special namespace
feature in the language is required. Structs are namespaces - you
got me there.