/rose

A compiler infrastructure to build source-to-source program transformation and analysis tools.

Primary LanguageC++OtherNOASSERTION

   _____   ____   _____ ______
  |  __ \ / __ \ / ____|  ____|
  | |__) | |  | | (___ | |__
  |  _  /| |  | |\___ \|  __|
  | | \ \| |__| |____) | |____
  |_|  \_\\____/|_____/|______|

  ROSE compiler -- A compiler infrastructure to build source-to-source program
                   transformation and analysis tools.
  Version 0.9.5a

  http://www.rosecompiler.org/


  ************************************************************************
                             ROSE Project Goal
  ************************************************************************

     The goal of ROSE is to provide the support required to easily build tools
  that operate on source code (analyzing or optimizing). ROSE is a library that
  makes it easy to build a wide range of tools from optimizing source-to-source
  compilers to special purpose analysis tools. ROSE supports,
  Fortran (66,77/95/2003), C89, C99, C++, OpenMP, UPC, and PHP.  ROSE is
  part of ongoing collaborations with many external groups worldwide.



  ************************************************************************
                             Intended Audience
  ************************************************************************

  Anyone building tools to operate on source code.  These can be source-to-source
  optimization translators (optimizing compilers), debugging tools, software analysis
  tools, etc.  ROSE is a library that can be used to build a wide range of tools
  that operate on source code (either just reading it to do analysis, or reading
  and writing it to do transformations, or just writing it to support code generation.



  ************************************************************************
                                Documentation
  ************************************************************************

     Documentation is located at http://www.roseCompiler.org. The ROSE
  distributions no longer (as of July 2008) contain a built copy of the ROSE
  documentation.



  ************************************************************************
                                Research Papers
  ************************************************************************

     Most of the research papers published on ROSE are contained in the
  ROSE/RESEARCH_PAPERS directory.  Also included is information about where
  they were published.


  ************************************************************************
                      Current Development and Examples
  ************************************************************************

     Although ROSE is a mechanism for building source-to-source translators, the
  current development environment builds just one translator (ROSE/src/rose) and it is used to test the
  functionality of the many subsystems being added to ROSE.  The goal of course is that the
  user uses ROSE to build his/her own preprocessor and would use one or more of the subsystems
  that are provided within ROSE.  The ROSE/ExamplePreprocessors directory contains several
  example translators which demonstrate different features of ROSE.  Some represent
  work in progress specific to collaborations with different outside projects.



  ************************************************************************
                               ROSE Directories
  ************************************************************************

  The "src" directory contains all source code for ROSE (including optional parts of ROSE)

  The "tests" directory contains several subdirectories of test codes which can be used to test
  the current version of ROSE.

  The developersScratchSpace is used for the development purposes of the principal authors.
  It is not intended to be useful for any other purpose.  Tests that are useful
  within the development directory are periodically placed into the appropriate "tests" directories
  so that they can be used for to define an evolving test suite for ROSE.



  ************************************************************************
                              INSTALLATION INSTRUCTIONS
  ************************************************************************

  See the "Installation Instructions" at the ROSE web site: http://www.roseCompiler.org.