From: MikkelFJ Date: 2001-12-05T06:23:37+09:00 Subject: [ruby-talk:27483] Re: Featherweight concurrency and backends was: OCaml native code compiler has little to do with C-- "Robert Feldt" wrote in message news:Pine.GSO.4.21.0112041048530.13402-100000@godzilla.ce.chalmers.se... > Have you looked at MachineSUIF? > > http://www.eecs.harvard.edu/hube/software/software.html > > Looks very interesting and they seem to be working on it (latest release > in October this year): I looked at the Zephyr part of the project. It's the actual codegeneration. http://www.cs.virginia.edu/zephyr/vpo/ I checked the dates and the people working on the project. Notably you'll see Norman Ramsey, co-author of the feither-weight paper. Norman Ramsey is now working on C--. VPO was the codegenerator (in Zephyr) I was thinking of earlier when you asked about backends. VPO used to be the only decent alternative to gcc backend I guess. You will also notice David Hanson mentioned - coauthor of lcc compiler frontend. He works a Microsoft Research - as does Simon P. Jones (who is also on the C-- project). There is a lcc based C frontend to C--. I'm rather sure that all the brainpower is going into C-- now. They may in the future integrate C-- with SUIF, but that is just a guess. The SUIF project looks interesting if somewhat overengineered. It will take some time to grasp the project. You can both create frontends and backends. I'd have to study much harder on it to say more. It may be interesting to pick up the optimizations of SUIF and the codegeneration of C--. It appears that you can take SUIF, create a C-- backend (they already have a C backend). Or more dirty you could use the C backend because C-- has a C frontend :-) However, C-- provides significant concepts such as continuations and tight integration with the front-end runtime. This covers garbage collection and thread handling - or basically anything else you'd care to implement. On the other hand - if you are using SUIF and they really have some decent codegeneration it may not be worthwile bothering with C--. It's just that I think their codegeneration is more or less abandoned. They care more about target independent optimizations. I'd say that tight runtime integration with the backend codegenerator is worth a thousand loop optimizations. Especially in lightweight threaded GC languages. And generally because memory control is more significant than local code optimizations due to the processor / memory speed gap. But then - I don't know much about SUIF. BTW: Eiffel has just been released for .NET. http://www.eiffel.com/ MikkelFJ