Modular programming¶ Packages Package renaming Grouping packages Child of renamed package Backwards-compatibility via renaming Private packages Declaration and usage Private sibling packages Outside the package tree Private with clauses Definition and usage Referring to private child package Limited Visibility Limited visibility and private with clauses Limited visibility and other elements Visibility Automatic visibility With clauses and visibility Circular dependency Private packages Use type clause Another use clause example Visibility and Readability use type use all type Use clauses and naming conflicts Code example Naming conflict Circumventing naming conflicts Subprograms and Modularity Private subprograms Private subprograms of a package Private subprograms and private packages