Reddit: why aren't people using D?
Walter Bright
newshound1 at digitalmars.com
Fri Jul 24 14:37:57 PDT 2009
Steven Schveighoffer wrote:
> On Fri, 24 Jul 2009 14:10:59 -0400, Walter Bright
> <newshound1 at digitalmars.com> wrote:
>> That's my problem with properties as a distinct syntax - they don't
>> have distinct uses or behaviors.
>
> If you delineate what can be called how, then you elminate syntax
> ambiguities from occurring, and eliminate bizarro cases of syntax. The
> difficulty is that the "human meaning" of a property is different than
> the human meaning of a function. To the compiler, they're all
> functions, so you as the compiler writer aren't seeing that they are
> different. I think we all agree that writefln = "hi"; makes absolutely
> no sense to a person. But it makes complete sense to the compiler,
> because it has no idea what the word "writefln" means to a person.
But when I suggest a restriction on properties, I get complaints that
someone might want to have them do what functions do. So I fail to see
what rule distinguishes them from functions, even for people.
> It's the exact same reason + is not the concatenation operator.
> Semantically, making + concatenate two strings together would be
> completely unambiguous from adding two integers together because strings
> do not define addition, and integers do not define concatenation. From
> your own documentation, someone seeing "10" + 3 might think that he
> would get 13 or "103". Even if the compiler defines what "should"
> happen, and the rules are unambiguous, it looks incorrect to the user.
Using + for concatenation is syntactically ambiguous with vector addition.
More information about the Digitalmars-d
mailing list