Tony wrote:> "Max Hailperin" <max@gustavus.edu> wrote in message>> (2) You reject someone else's back end that is usable on a canned,>> black-box basis.>> I didn't reject LLVM. I was recently at the project website and got> the impression that their goals will not be achieved for many> years. Vaporware?

Not only does LLVM already exist, it is already shipping in commercial
products.

> Also, it would be nice to have a backend that isn't as complex because it> won't have to be for my language because it is no where as complex as C++.

C++ has not imposed significant complexity on LLVM. Consequently, you can
write an optimizing native code compiler for a trivial language in only 100
lines of code:

Dozens of language implementations have already been built upon LLVM. It
works.

> Just because I personally don't want to do the backend doesn't mean that I> wouldn't want someone to do that specifically for my language rather than> in general for all languages or C++ (the latter of which is "a lofty> goal").

The llvm-gcc compiler compiles many languages including C++ to optimized
native code that is competitively performant with GCC.

What you are referring to is the separate Clang project that aims to
implement a new C++ *front* end.

>> If LLVM is flexible, that means it can accommodate not only your>> current design, but also the future ones you are going to try out>> (some of which may turn out to be dead ends, quickly scrapped once>> tried).>> Again though, because LLVM project goals are so lofty, it may not be> available in my lifetime.

I suggest you spend less time writing such nonsense and focus on learning
LLVM instead.