sub get_data { # returns scalar data pointer to my structure my $return_value; my $db = open_database($credentials); # must declare this above my $data = query_db($db, "select * from bar"); $return_value = massage_data($data); return $return_value; } sub open_database { my $cred = shift; warn "open_database doing nothing"; return undef; } ...