maybe i should have been more descriptive... i have a language file for each of my modules I use in my program... so Login.pm calls the transelate sub like this: &translate(lang=>'Login'); and then basically the translate sub "loads" a hash %langLogin that's in a seperate file called en.pm... Hope this is more descriptive... Thank you for your prompt reply