AlphaZ system is now designed based on eclipse plug-in projects for better collaboration with CAIRN group in IRISA, France. We currently have two repositories hosting different parts of the system, based on where it was initially developed.
Individual directories (with prefix like fr.irisa.cairn or edu.csu.melange) are individual projects in Eclipse, and it is designed to be checked out from Eclipse as projects.
------trunk | |---mde // AlphaZ extensions based on MDE | | | |---edu.csu.melange.alphaz.mde // AlphaZ system with MDE | | | |---edu.csu.melange.alphaz.mde.tests // Test project for MDE part | | | |---edu.csu.melange.alphabets //Xtext parser for alphabets | |---edu.csu.melange.alphabets.ui //Xtext generated editor for alphabets | | | |---edu.csu.melange.alphabets.kermeta.visitor.gen // Project used for visitor code generation | | | |---edu.csu.melange.alphaz.commands // projects for scripting interface | |-.commands.edit // Tree editor for Command IF model for command description | |-.commands.editor | |-.commands.scripts.mde // Scripts that are generated completely automatically from commands project | | |----tools // Tools that are shared among projects | |----features // Eclipse features and update site projects for public release | | | |--- edu.csu.melange.alphabets.developer.feature // Group all the plugins needed for Development | |--- edu.csu.melange.alphabets.developer.updatesite // Used for updating the Dev Release Website | |--- edu.csu.melange.alphabets.users.feature // Group all the plugins needed for Public Release | |--- edu.csu.melange.alphabets.users.updatesite // Used for updating the Public Release Website
The gecos SVN has a large number of eclipse projects. The list below are for projects that are used by AlphaZ and PolyhedralIR, and is not exhaustive.
Consult MANIFEST.MF in
edu.csu.melange.alphaz.mde for complete list of required plug-ins.
The PolyhedralIR chain. Following plug-ins are
gecos/trunk | |---polytools-emf | | |---org.polymodel.scop // Project for representing/manipulation Static Control Loops (SCoPs) |---org.polymodel.scop.cgenerator // C code generation from Scop |---org.polymodel.scop.dtiler // D-Tiling algorithm implemented on Scop |---org.polymodel.algebra // Model for representing Integer (Linear) Algebra, used for library independent representation of polyhedra |---org.polymodel // Model for basic polyhedral objects (Domain/Function) and interface for external polyhedral libraries for manipulating them |---org.polymodel.isl // Implementation of polymodel using ISL | |---fr.irisa.cairn.jnimap.cloog // JNI binding for ClooG (cloog-isl) |---fr.irisa.cairn.jnimap.isl // JNI binding for ISL | // depends on plug-ins under cairn-public/tools/jnimapper for changing bindings to ISL (cairn-public is a separate SVN repository) |---org.polymodel.polyhedralIR // Common IR for Polyhedral programs. Closely follows AlphaZ AST |---org.polymodel.polyhedralIR.codegen // Code generation framework for PolyhedralIR and implemented code generators
The following plug-ins are the minimal plug-ins required from Gecos for using CS editor (the scripting interface). Modifying these plug-ins are necessary for extending the scripting interface, but modification must be done with great care.
gecos/trunk |---core | |---fr.irisa.r2d2.gecos.framework |---fr.irisa.r2d2.parser.runtime |---fr.irisa.r2d2.gecos.cseditor
Anoymous read only access is available through http. The repository is located at 'http://www.cs.colostate.edu/AlphaZsvn/Development'
For developers in CSU, the following location should be used with your CS login
Anonymous read only access is available for the gecos repository.
Follow instructions at
https://gforge.inria.fr/scm/?group_id=510 for Gecos SVN and
https://gforge.inria.fr/scm/?group_id=2888 for CAIRN-public
URLS are (for Anonymous and Developer access):
For developers that seek to develop within
PolyhedralIR, write access may be needed.
To acquire write access to the gforge repositories:
You may have some error connecting to the repository through eclipse
For current version of AlphaZ following features from external providers are required: