Fixing D's Properties
Chad J
gamerChad at _spamIsBad_gmail.com
Fri Aug 17 10:16:21 PDT 2007
Daniel Keep wrote:
> [snip]
>
> I emphatically agree that *something* needs to be done to address the
> shortcomings of properties in D. I mean, what's the point of having
> increment/decrement and the op= operators if you cannot use them in a
> large number of places?
>
> I do have to say that I'm not a big fan of the symbol-based syntax.
> Also, the inout system seems a bit... off. The problem I have with it
> is that *both* the getter and setter are marked inout, which doesn't
> make a lot of sense.
>
> Another possibility is to use contract-style notation:
>
> int foo
> {
> in(int baz) { bar = baz; }
> out() { return bar; }
> }
>
> Or even just dropping "inout" and using "in" and "out" explicitly:
>
> in void foo(int baz) { bar = baz; }
> out int foo() { return bar; }
>
Looks like it will work, and is fine by me.
> On another note, I think you should expand on exactly how different
> kinds of statements should be rewritten. For instance, you haven't
> clarified what happens here:
>
> w.rect.x = 10;
>
> -- Daniel
More information about the Digitalmars-d
mailing list