  The parameters of MDS self-dual codes are completely determined by the code
length. In this paper, we utilize generalized Reed-Solomon (GRS) codes and
extended GRS codes to construct MDS self-dual (self-orthogonal) codes and MDS
almost self-dual codes over. The main idea of our constructions is to choose
suitable evaluation points such that the corresponding (extended) GRS codes are
Euclidean self-dual (self-orthogonal). The evaluation sets are consists of two
subsets which satisfy some certain conditions and the length of these codes can
be expressed as a linear combination of two factors of q-1. Four families of
MDS self-dual codes, two families of MDS self-orthogonal codes and two families
of MDS almost self-dual codes are obtained and they have new parameters.
