QCDF90: A set of Fortran 90 modules for a high-level, efficient   implementation of QCD simulations
  We present a complete set of Fortran 90 modules that can be used to write very compact, efficient, and high level QCD programs. The modules define fields (gauge, fermi, generators, complex, and real fields) as abstract data types, together with simpler objects such as SU(3) matrices or color vectors. Overloaded operators are then defined to perform all possible operations between the fields that may be required in a QCD simulation. QCD programs written using these modules need not have cumbersome subroutines and can be very simple and transparent. This is illustrated with two simple example programs. 
I. Dasgupta, A.R. Levi, V. Lubicz, and C. Rebbi