-
Notifications
You must be signed in to change notification settings - Fork 9
CodingGuidelines
parcollet edited this page Apr 16, 2012
·
7 revisions
Here are the rules for code to be acceptable for incorporation in TRIQS.
- Python >= 2.7.x
- C++. Some constructions of C++11 are accepted in the user code (See below).
- f90 [ if necessary, not recommended ]
The libraries that can be used in TRIQS are given in an exhaustive list below. There are two reasons for this restriction :
- Since TRIQS is GPL, we must use only libraries with boost or GPL licence. In particular don't use non-free software, e.g. ALPS, Numerical Recipes, as they are not compatible with the GPL licence.
- There is also a portability & installation issue. Libraries must be available on every platform that we use, and easy to install (i.e. in standard packages).
- There is also obviously a quality issue, in particular speed, usability, etc...
- Here is an exhaustive list of C++ libraries and Python libraries
and that can be used. If you plan to contribute and need something else, please contact the developers.
Here are the recommendations for the C++ style.