D2 status interim report ?
Dan
murpsoft at hotmail.com
Thu Jun 26 18:09:05 PDT 2008
Koroskin Denis Wrote:
> On Mon, 23 Jun 2008 10:02:39 +0400, Extrawurst <spam at extrawurst.org> wrote:
>
> > Walter Bright schrieb:
> >> Extrawurst wrote:
> >>> Hey Walter,
> >>> this is just a list of changes which were originally planned to be
> >>> integrated into D2.0 according to the slides you and Andrei presented
> >>> on DConference '07. So please give us a comment on what perhaps has
> >>> changed or when certain things are going to be addressed.
> >>> A little insight on your roadmap would be great.
> >>>
> >>> (1) STRUCT opImplicitCastTo/From (p.21)
> >>> ---------------------------------
> >>> How do you want to solve the problem of overloading by return value
> >>> which would be necessary to solve something like the example in the
> >>> slides (p.21):
> >>>
> >>> struct S{
> >>> int opImplicitCastTo(){...}
> >>> float opImplicitCastTo(){...}
> >>> }
> >>
> >> Still planning on it.
> >
> > So does it mean we gonna get overloading on different return types ?
>
> There was a suggestion to change a signature to something like this:
> struct S {
> void opImplicitCastTo(ref float result) { ... }
> void opImplicitCastTo(ref int result) { ... }
> }
>
> bacause overload on return value is basically unacceptable.
Yes, and the lack of orthogonality of the old/current system is annoying at best. The source code for Walnut was roughly 15% larger because of this.
I abandoned the project mostly because the code that I thought was being generated was so vastly different from the code that was being generated.
For example, passing a 16-byte struct was being done by rep movsd'ing the arguments while I was programming it envisioning xmm register usage for "arguments" and closure-like behavior for "self" and "context".
I started reworking the whole project in fasm so I could write exactly what I thought, but then abandoned the scripting engine altogether to the next project about the time I finished writing the lexer because I became disinterested.
More information about the Digitalmars-d
mailing list