Operator overhaul
Bill Baxter
wbaxter at gmail.com
Tue Oct 21 18:26:03 PDT 2008
(Reply to message on d.announce)
On Wed, Oct 22, 2008 at 9:36 AM, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> Jason House wrote:
>>> Is there a good reason why it shouldn't be possible to use opAssign as
>>> a replacement for opIndexAssign?
>>>
>>> --bb
>>
>> opindexAssign will still be needed when opindex has a non-ref return type.
>
> I think the entire operator paraphernalia is due for a serious overhaul.
O_o! Oh noohs! We may have to start calling it the "E" language soon.
Seriously, though, if the overhaul makes it possible to do multiple
slices with multiple $'s, then I'm all for it.
As in hyperArray[$-1, 1..$, 0..$-2]
Even better would be python's "just leave it out" slicing:
As in hyperArray[$-1, 1.., ..$-2]
It's a bit easier to read in my eyes.
There was also the stuff discussed before about passing in the op as a
delegate or template parameter to give the class designer a chance to
run some pre- or post- op code as desired. Or rewriting x+=y type ops
to be x=x+y
So we have:
1. multiple slice indexing
2. generalized $ indexing
3. generalized op execution
Any other operator-related issues?
--bb
More information about the Digitalmars-d
mailing list