Give me a break

Jason House jason.james.house at gmail.com
Wed Jul 1 10:47:33 PDT 2009


Walter Bright Wrote:

> Jason House wrote:
> > Walter Bright Wrote:
> > 
> >> If there's more I can do to make this work, I would like to know
> >> what that is.
> > 
> > I know D does not burden itself with backwards compatibility,
> 
> That's not quite correct. I have strongly resisted any changes to D2 
> that would *silently* break programs. The breaking changes elicit clear 
> messages from the compiler.
> 
> > but the
> > lack of compatibility has to affect many D projects. There are many
> > D1-only projects that can't be used within D2. When D3 is  started,
> > will we have even more incompatible choices? I have no solution to
> > this issue, but it deserves some thought.
> > 
> > In the past, I proposed the idea of forward compatibility which would
> > allow a D1 compiler to ignore D2-specific keywords and other minor
> > semantic differences such as invariant()... The idea wasn't 100%
> > compatibility, but rather to allow writing a reasonable subset of D2
> > that could compile in D1. Maybe a 3rd party tool to do the
> > translation is enough?
> 
> The problem is that creates a third language.
> 

Please don't let the "forward compatibility" proposal overshadow the other part of my post. Compatibility between D1, D2 (and D3) can be a serious problem for library writers. I have no good solution for it. In some ways, this is at the heart of some divisions in the D community. There are 3 mainstream dialects of D, and they don't interoperate.  



More information about the Digitalmars-d mailing list