Welcome to Web-News
A Web-based News Reader
Subject Re: Operator overloading -- lets collect some use cases
From Christopher Wright <dhasenan@gmail.com>
Date Tue, 30 Dec 2008 09:35:31 -0500
Newsgroups digitalmars.D

Don wrote:
> Some observations based on the use cases to date:
> (1)
> a += b is ALWAYS a = a + b (and likewise for all other operations).
> opXXXAssign therefore seems to be a (limited) performance optimisation.
> The compiler should be allowed to synthesize += from +. This would
> almost halve the minimum number of repetitive functions required.

Not quite true:
class A
{
        int value;
        A opAdd(A other) { return new A(value + other.value); }
        A opAddAssign(A other) { value += other.value; }
}

class B
{
        A a;
        this (A value) { a = value; }
}

void main ()
{
        auto a = new A;
        auto b1 = new B(a);
        auto b2 = new B(a);
        auto a2 = new A;
        b1.a += a2; // okay, b1.a is b2.a
        b1.a = b1.a + a2; // now b1.a !is b2.a
}

Recent messages in this thread
 
-# Re: Operator overloading -- lets collect some use cases Bill Baxter 28-Dec-2008 02:00 pm
|-# Re: Operator overloading -- lets collect some use cases Frits van Bommel 30-Dec-2008 09:30 am
|.-# Re: Operator overloading -- lets collect some use cases Denis Koroskin 30-Dec-2008 09:46 am
|.|\# Re: Operator overloading -- lets collect some use cases Frits van Bommel 30-Dec-2008 11:31 am
|.\# Re: Operator overloading -- lets collect some use cases Bill Baxter 30-Dec-2008 04:02 pm
|# Re: Operator overloading -- lets collect some use cases Christopher Wright 28-Dec-2008 02:42 pm
-# Re: Operator overloading -- lets collect some use cases aarti_pl 28-Dec-2008 03:56 pm
|-# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 28-Dec-2008 04:11 pm
||-# Re: Operator overloading -- lets collect some use cases aarti_pl 28-Dec-2008 04:56 pm
||.-# Re: Operator overloading -- lets collect some use cases downs 29-Dec-2008 03:40 am
||..|# Re: Operator overloading -- lets collect some use cases bearophile 29-Dec-2008 04:31 am
||..|# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 06:38 am
||..-# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 29-Dec-2008 12:46 pm
||..|-# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 01:14 pm
||..|.-# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 29-Dec-2008 01:21 pm
||..|..|# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 02:25 pm
||..|..|# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 02:42 pm
||..|..\# Re: Operator overloading -- lets collect some use cases KennyTM~ 30-Dec-2008 02:36 am
||..\# Re: Operator overloading -- lets collect some use cases Yigal Chripun 29-Dec-2008 04:28 pm
|-# Re: Operator overloading -- lets collect some use cases Don 29-Dec-2008 04:01 am
|.-# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 07:50 am
|..-# Re: Operator overloading -- lets collect some use cases Don 29-Dec-2008 09:43 am
|...-# Re: Operator overloading -- lets collect some use cases aarti_pl 29-Dec-2008 10:36 am
|....\# Re: Operator overloading -- lets collect some use cases Don 30-Dec-2008 01:28 am
-# Re: Operator overloading -- lets collect some use cases Jarrett Billingsley 28-Dec-2008 04:17 pm
|-# Re: Operator overloading -- lets collect some use cases Yigal Chripun 28-Dec-2008 06:14 pm
|.-# Re: Operator overloading -- lets collect some use cases Jarrett Billingsley 28-Dec-2008 06:46 pm
|..-# Re: Operator overloading -- lets collect some use cases bearophile 28-Dec-2008 07:50 pm
|...-# Re: Operator overloading -- lets collect some use cases Don 29-Dec-2008 01:00 am
|....-# Re: Operator overloading -- lets collect some use cases Bill Baxter 29-Dec-2008 02:31 am
|.....|# Re: Operator overloading -- lets collect some use cases bearophile 29-Dec-2008 03:11 am
|.....\# Re: Operator overloading -- lets collect some use cases Christian Kamm 29-Dec-2008 05:32 am
|# Re: Operator overloading -- lets collect some use cases Stewart Gordon 28-Dec-2008 06:57 pm
|# Re: Operator overloading -- lets collect some use cases Bill Baxter 29-Dec-2008 02:46 am
|# Re: Operator overloading -- lets collect some use cases Chad J 29-Dec-2008 03:25 pm
-# Re: Operator overloading -- lets collect some use cases Don 30-Dec-2008 02:27 am
|-# Re: Operator overloading -- lets collect some use cases (Current message) Christopher Wright 30-Dec-2008 09:35 am
|||# Re: Operator overloading -- lets collect some use cases Stewart Gordon 30-Dec-2008 11:28 am
||\# Re: Operator overloading -- lets collect some use cases KennyTM~ 31-Dec-2008 05:01 am
|-# Re: Operator overloading -- lets collect some use cases Frits van Bommel 30-Dec-2008 10:31 am
||-# Re: Operator overloading -- lets collect some use cases Don 30-Dec-2008 10:58 am
||.-# Re: Operator overloading -- lets collect some use cases Frits van Bommel 30-Dec-2008 11:38 am
||..-# Re: Operator overloading -- lets collect some use cases Don 30-Dec-2008 12:54 pm
||..|-# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 30-Dec-2008 02:26 pm
||..|.-# Re: Operator overloading -- lets collect some use cases Denis Koroskin 30-Dec-2008 02:33 pm
||..|.|\# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 30-Dec-2008 02:41 pm
||..|.-# Re: Operator overloading -- lets collect some use cases Don 31-Dec-2008 03:01 am
||..|..-# Re: Operator overloading -- lets collect some use cases Frits van Bommel 31-Dec-2008 07:44 am
||..|..|\# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 31-Dec-2008 11:34 am
||..|..-# Re: Operator overloading -- lets collect some use cases Stewart Gordon 31-Dec-2008 07:45 am
||..|...\# Re: Operator overloading -- lets collect some use cases Don 31-Dec-2008 10:02 am
||..-# Re: Operator overloading -- lets collect some use cases Weed 30-Dec-2008 01:20 pm
||...-# Re: Operator overloading -- lets collect some use cases Don 31-Dec-2008 01:51 am
||....|# Re: Operator overloading -- lets collect some use cases Bill Baxter 31-Dec-2008 02:02 am
||....\# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 31-Dec-2008 02:35 am
||# Re: Operator overloading -- lets collect some use cases Andrei Alexandrescu 30-Dec-2008 11:32 am
|-# Re: Operator overloading -- lets collect some use cases Stewart Gordon 31-Dec-2008 08:03 am
|.\# Re: Operator overloading -- lets collect some use cases Don 31-Dec-2008 10:25 am
|# Re: Operator overloading -- lets collect some use cases Walter Bright 30-Dec-2008 08:42 pm
|# Re: Operator overloading -- lets collect some use cases Jarrett Billingsley 28-Dec-2008 04:20 pm
\# Re: Operator overloading -- lets collect some use cases Walter Bright 30-Dec-2008 08:43 pm