const and immutable objects
Jeremie Pelletier
jeremiep at gmail.com
Mon Aug 31 07:03:59 PDT 2009
Graham St Jack Wrote:
> On Sun, 30 Aug 2009 21:28:18 -0400, Jeremie Pelletier wrote:
>
>
> > I agree that D lacks a mechanism to separate the object from it's
> > reference. Maybe syntax like the following could be used to apply the
> > storage class to the object value, and not the reference value:
> >
> > class Foo;
> > void bar(in Foo& foo) {}
> >
> > It's quite ugly and C-like, but that's the first thing that came to
> > mind. The reference value is unique to the current method and shouldn't
> > share the same storage qualifiers as it's referenced memory.
>
> I think the time for pining over this particular syntax feature of D is
> over - as nice as it would be to be able to fix the problem in the
> language, it would be too disruptive right now.
I think it would be better to fix it in D2 instead of patching a language design flaw with a template. It wouldn't be the first time D2 has changes that breaks existing code anyways (and the upcoming T[new] will definitely break a lot of code, so does shared when it works, etc), so it would be less disruptive to do it now than never do it.
More information about the Digitalmars-d
mailing list