Re: [C--] C-- development
Hendrik Boom <[email protected]> Wed, 13 Mar 2013 18:47:47 +0000 (UTC)
| Newsgroups | gmane.comp.lang.c-- |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 13 Mar 2013 12:44:12 -0400, doug moen wrote: > From my outsider perspective, it appears that C-- is moribund until > someone picks it up again. However, I also think that, rather than > starting from the current C-- code base, it would be better to migrate > the distinctive features of C-- into the LLVM project. Then, if you > like, the C-- syntax could continue to be supported by writing a C-- > compiler with an LLVM back end. But you could get the benefits of C-- > semantics for your back end without generating C-- syntax, because those > semantics would be part of LLVM. I'm not pretending this would be easy. > But if it could be done, it would be the best way to bring the > innovative ideas in C-- into the mainstream. I'll also note that the C-- > project was originally based on the design of the GHC (Haskell Compiler) > back end, which has an intermediate language called C-- or Cmm. GHC also > supports LLVM as an alternative back end, and I believe there are people > in the GHC community who would gladly abandon the maintenance of the Cmm > backend if LLVM were extended to do everything that Cmm does. > > Doug Moen. But C-- is a far more elegant language. It corresponds closely to what I consider a decent interface between a compiler and a code generator. LLVM is too committed to a particular high-level model for me. I need to do unscaled address arithmetic. LLVM gives me C array subscripting instead. Algol 68 array elements are not necessarily spaced apart by a multiple of the size of an element. Granted, I could get around this by an flurry of casts, but it's ugly. Tail recursion is there only subject to various restrictions. And there's also a Haskell procedure call that's documented only as the kind of call that Haskell needs. What kind of call *is* that? At least, that's what I remember from the last time I read the docs. Altogether it seems I'd be fighting LLVM more than using it. If I were going in that direction, I can use C as object code instead. -- hendrik > > On 13 March 2013 11:49, Hendrik Boom <[email protected]> wrote: >> Has development on C-- ceased? Or just stalled for a few years? >> >> I notice in there seems to be files in qc--20090627/src with makes >> starting with 'mips' and 'alpha' and 'ia64'. Does this imply that >> these architecures are actually supported? Or are they still under >> development and stalled along with the rest of the system. >> >> Is IA64 the Itanium? Or is it what Debian calls AMD64, the 64-bit >> extension to Intel's traditional 32-bit archtecture? >> >> Is there other source code for C-- lying around somewhere that isn't in >> the destributed package? >> >> If I were to want to use it on, say, an ARM machine, would I have to do >> it myself? >> >> Would it be better to continue on from qc--, or better to start from >> scratch? Are there lessons to be learned from the qc-- experience I'd >> better find out about before I even think of doing this (and maybe >> think better of it and find another worthy project?) >> >> -- hendrik >> >> _______________________________________________ >> Cminusminus mailing list [email protected] >> https://lists.eecs.harvard.edu/mailman/listinfo/cminusminus > _______________________________________________ > Cminusminus mailing list [email protected] > https://lists.eecs.harvard.edu/mailman/listinfo/cminusminus _______________________________________________ Cminusminus mailing list [email protected] https://lists.eecs.harvard.edu/mailman/listinfo/cminusminus