Subprograms are either functions or subroutines, which are either external, internal or module subroutines.
Subprograms can be either functions or subroutines, and these can be categorized as external, internal, or module subroutines.