# mod.pm package mod; sub load { print(); print("loaded\n"); } load(); 1; __DATA__ some data #### # script.pl BEGIN { print("Before 'use mod;'\n"); } use mod; BEGIN { print("After 'use mod;'\n"); } use mod; #### Before 'use mod;' some data loaded After 'use mod;'