Attributes are extra properties of variables which go beyond the basic type. A few examples may be found in the following code fragment:
FUNCTION encode(pixels)
IMPLICIT NONE
INTEGER, PARAMETER :: n=1000
INTEGER, DIMENSION(n,n) :: pixels,encode
REAL, DIMENSION(n) :: x,y
INTEGER :: call=0
...
call = call + 1
...
END
Note in particular the PARAMETER attribute that qualifies the INTEGER type declaration for n (taking the place of a separate F77 PARAMETER statement); the use of :: as a separator between the declaration and the variable list; and the data initialization within the INTEGER statement (equivalent to a DATA statement with an implicit SAVE). In Fortran 90, precision (REAL*8, e.g.) is a special type property called KIND, and it should be placed in parentheses after the type (REAL(8), e.g.).