The Centaur system was conceived as a generic interactive environment generator, that, when given the formal specification of a programming language (syntax and semantics), produces a language-specific environment. With the help of Centaur one can develop tools needed for a programming environment: structure editors, debuggers, interpreters, and various translators (for manipulating programs or objects). It is also possible to incorporate existing tools in a Centaur-generated environment. A generic system, Sophtalk, is provided for communication between tools; Centaur itself is multi-process.
We include here a sampling of Centaur-related papers in an annotated bibliography. The papers are divided into three categories: i) papers about the system, ii) papers about specific language environments, and iii) papers regarding semantic aspects. For an introduction to the system, one can also consult The Centaur tutorial.
The system was distributed by INRIA Sophia Antipolis, and used at over 100 sites. Our users typically were universities and research centers that use the system for: teaching purposes (for compiler construction, programming languages, semantics, etc.), or for experimenting with programming languages, or program transformations, translations, and verification. Our users have experimented with Centaur for quite a few languages (a partial list of languages can be found by clicking here.)
Centaur itself was a meta-system, for generating generic programming environments. One such generated environment has been commercialized in the area of scientific computing; Simulog offers a wide range of products for Fortran and the parallelization of existing code towards various target architectures.