C-- Harvard EECS ->
  C-- Home | Specification & Downloads | Old News | Papers | Mailing List | People | FAQ


C-- News for May, 2001

Here is the C-- news as of May, 2001.
(There is old news from last year still available.)

We still don't have a working compiler that implements the full Version 2 specification. Essentially, our status is that a great deal of interesting stuff has been going on, but nothing is actually finished.

  1. We are planning a C-- workshop at Harvard for late July or mid-August. The two topics of discussion will be types and C-- and support for concurrency.
  2. All the developers have been at work on a new language specification, to be called version 2.0. The new manual is not quite ready as we have been working on the implementation.
  3. Norman Ramsey and Simon Peyton Jones have put toegether a concurrency proposal . There are substantial points of interest in the proposal, but many problems remain, especially problems of stack overflow and pre-emption.
  4. Daniel Damian has worked on using type-directed partial evaluation to specialize analyses and optimizations used in the compiler. Our hope is that the specialized code will enable us to use an machine-dependent representation of instructions within the compiler. We expect this will substantially reduce time and space costs. The technique should also have interesting applications to other problems, e.g., proof-carrying code.
  5. Lee Feigenbaum has done some preliminary work on automatically deriving a code generator from a machine description. We hope to complete this work and use the code generators in the Quick C-- compiler.
  6. Christian Lindig has pushed forward the development of Quick C--, including translation to intermediate code, flow-graph representations for optimization, liveness analysis, and register allocation.
  7. Norman Ramsey is working on a version of BURG for Objective Caml. We will use this tool to implement both Lee Feigenbaum's code generators and any code generators we might write by hand.
  8. Fermin Reig has been adapting the Objective Caml front end to a restricted version of C-- (cmmc, which is built on top of MLRISC). He has got working code!
  9. Sergei Egorov: trampolining C--. Sergei has built an implementation of C-- by compiling C-- to C and using a trampoline. It is basically a proof-of-concept implementation that demonstrates a popular method of compiling tail-recursive procedures to portable C.
  10. Jon Eddy will be spending the summer looking at two problems related to C--: first, how to recognize and identify machine instructions efficiently, even in the presence of interesting optimizations. Second: whether some of the C-- `unchecked run-time errors' can in fact be checked at run time, and if so at what cost.
  11. John Dias will be working on an `optimization backplane' for putting together the back end of the Quick C-- compiler. The idea is to give a clean framework for phase ordering and other aspects of configuring the compiler.


Contact: C-- Webmaster. URL: http://www.cminusminus.org/. Last edited: Mon 05 Feb 2007 14:02 EST.