pointer/target: Pointers can only point at objects that are targets.
public/private: All module entities are either public or private.
intent: All subroutine arguments must declare intent as in, out or inout. All function arguments must be declared intent in.
dimension: Arrays can be from one to seven dimensions.
allocatable: For dynamic allocation
parameter: A constant
save: A static local variable