D vs Go in real life
Bienlein
jeti789 at web.de
Sat Nov 30 12:36:31 PST 2013
On Saturday, 30 November 2013 at 18:16:23 UTC, Walter Bright
wrote:
> On 11/29/2013 12:29 AM, Bienlein wrote:
>> I guess in D you would do something like this:
>>
>> mixin template Rectangular() {
>> Point x, y;
>> }
>>
>> mixin Rectangular;
>>
>> struct Rectangle {
>> mixin Rectangular;
>> }
>
> It's easier than that:
>
> struct Rectangular {
> Point x,y;
> }
>
> struct Rectangular {
> Rectangle rectangle;
> alias this rectangle;
> }
D is always full of surprises ;-). Now the only feature in Go
that sets it apart from other languages is CSP.
I got this to work with help from the book by Ali Çehreli:
struct Point {
int x,y;
}
struct Rectangular {
Point x,y;
}
struct Rectangle {
Rectangular rectangular;
Rectangular rect() const {
return rectangular;
}
alias rect this;
}
void main(string[] args)
{
Rectangle rectangle = Rectangle();
rectangle.x = Point();
}
More information about the Digitalmars-d
mailing list