LLVM 3.0 type system changes

Iain Buclaw ibuclaw at ubuntu.com
Thu Mar 10 03:04:02 PST 2011


== Quote from Caligo (iteronvexor at gmail.com)'s article
> --20cf3071c90ac76e43049e166972
> Content-Type: text/plain; charset=ISO-8859-1
> On Tue, Mar 8, 2011 at 9:48 AM, Iain Buclaw <ibuclaw at ubuntu.com> wrote:
> > == Quote from Caligo (iteronvexor at gmail.com)'s article
> > > --bcaec51a83ee693a30049df97ef8
> > > Content-Type: text/plain; charset=ISO-8859-1
> > > On Tue, Mar 8, 2011 at 12:29 AM, Bernard Helyer <b.helyer at gmail.com>
> > wrote:
> > > > On Tue, 08 Mar 2011 00:15:54 -0600, Caligo wrote:
> > > >
> > > > > On Mon, Mar 7, 2011 at 11:34 PM, Bernard Helyer <b.helyer at gmail.com>
> > > > > wrote:
> > > > >
> > > > >> On Mon, 07 Mar 2011 20:41:39 -0600, Caligo wrote:
> > > > >> > Do we really need another D compiler that doesn't work?
> > > > >>
> > > > >> Name me a working D2 compiler that doesn't have a front-end based
> > based
> > > > >> on DMD. Furthermore, name me an in progress independent
> > implementation
> > > > >> further along than SDC. The only candidate is Dil.
> > > > >>
> > > > >> SDC _will_ be finished, mark my words.
> > > > >>
> > > > >>
> > > > >> Regards,
> > > > >>  Some one who remembers why they don't use the NG that much.
> > > > >>
> > > > >>
> > > > >
> > > > > Yes, I know about dil, but I wonder why you chose not to contribute
> > to
> > > > > dil instead of starting a new project.  AFAIK dil is D1.
> > > >
> > > > I know about Dil. aziz is great, the project is great. However, I know
> > > > and want to use D2/Phobos. Plus, if I'm going to spend years on a
> > > > project, I may as well use stuff I like. Furthermore, SDC didn't start
> > > > out as a full compiler. Just playing around with lexing/parsing D. NIH
> > > > syndrome, too.
> > > >
> > > I was aware of your "NIH syndrome", and that's why I have a problem with
> > > this.  The main reason you are doing this is to serve your own needs, to
> > > make yourself feel good, to earn some kind of recognition, but not to
> > serve
> > > the community in any meaningful way.  Even if the project fails, it will
> > > look good on your resume because you took the time to develop a compiler.
> > > This kind of behavior is very common in the FOSS community, and it has
> > > become a disease.  It's the reason why there are thousands of dead
> > software
> > > projects that were never completed and maintained.
> >
> > IMHO, there's no such thing as a completed project. And if there is, then
> > it will
> > need maintaining in 6-12 months time regardless.
> >
> > Libraries change, systems change, compilers change.
> >
> > Ever tried compiling a 'finished' project written 5 years ago with a modern
> > GCC
> > compiler? It can be rather tricky, especially if said project depended on
> > certain
> > mis-features of the language implementation at the time.
> >
> Sure, I agree, many software projects are constantly changing and
> improving.  But many software projects also have released versions that one
> could say are "complete"; the user could use that version for months and
> perhaps years with no problem.  Our university Unix servers have gcc 3.4.4,
> which is about 7 years old.  Hundreds of students use it everyday with no
> problem.  It would be nice to have have the latest version, but it works and
> does what it's supposed to.  Which version of GDC do you feel comfortable
> using for the next 12 months to compile your D2 code?

I would say each GCC compiler version is about as stable as each other.

GDC on GCC-4.2 I would consider to be the 'long-term' stable version to go for.
GCC-4.5 being the next in line for that (though still have one or two deeply
roosted codegen quirks to iron out yet). But each has it's own unique problems
though, partly because the constraints of the D language push the GCC backend in
some interesting ways (things that ICE on 4.4 may compile just fine on 4.5 and
vice-versa).

Maybe if development always followed the trunk, would be able to catch breaking
backend changes more swiftly. Though it is pretty nightmarish keeping
compatibility with GCC-4.1 through to 4.5 in one tree as it is.


More information about the Digitalmars-d mailing list