It appears that there are really different discussions about properties. There 
is a discussion about letting properties look and act as much as fields, and 
there is a discussion about calling member methods on returning structs.

I'd like to seperate these discussions. First, I don't think it is wise to call 
a member on a returning struct, because of the expectation that the underlying 
object knows about the change. Thus is not true for a struct.

What I want to talk about is a completely different approach to the a.b.c 
problem, and with that I just make my own proposal, that is completely 
different from any other, which I call groups.

Suppose we have a rather big class with many methods and properties, this could 
come in handy. My idea is to introduce groups, in some ways similar to the idea 
of namespaces.

class A
{
   group bar
   {
      int foo()
      {
         return 123;
      }
      void foo(int i)
      {
         // do something spectacular
      }
   }
}

This could be called as:

auto o = new A();
auto i = o.bar.foo;
o.bar.foo = 123;

Fun thing about groups is that it is much more flexible. For example, basic and 
advanced methods can be separated, etc.

Just my 2 cents

Reply via email to