Function calls

Bill Baxter wbaxter at gmail.com
Thu Jan 28 14:18:02 PST 2010


On Thu, Jan 28, 2010 at 2:11 PM, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> Michiel Helvensteijn wrote:
>>
>> Bill Baxter wrote:
>>
>>>> byLine() is a function. It changes the state of stdin. Calling it
>>>> consecutively will in general result in different return values. If
>>>> there
>>>> were two guys: stdin.currentLine (property) and stdin.nextLine(), it
>>>> would be a different story.
>>>
>>> That's not how it works, I think.
>>> Just calling byLine() by itself only returns a range struct.
>>> Consuming things from that range is what changes the state of stdin.
>>
>> Ah, my bad. I was guessing. Still, returning a handle from a property that
>> can change the state of the originating object is.. iffy.
>
> I agree. So where's the consensus? Things seemed so clear when people were
> beaten with @property over their head.

I really don't see what the problem is there.
You are arguing that car.wheels should not be a property simply
because it would let me change the color of the wheels (which are part
of the car's total state)?

--bb



More information about the Digitalmars-d mailing list