6.6: Types of Programs