  We implement lattice QCD using the Fortran 90 language. We have designed
machine independent modules that define fields (gauge, fermions, scalars,
etc...) and have defined overloaded operators for all possible operations
between fields, matrices and numbers. With these modules it is very simple to
write QCD programs. We have also created a useful compression standard for
storing the lattice configurations, a parallel implementation of the random
generators, an assignment that does not require temporaries, and a machine
independent precision definition. We have tested our program on parallel and
single processor supercomputers obtaining excellent performances.
