external subprograms for shared business logic, nested programs for internal plumbing — combines the strengths of both patterns and is the recommended practice.