So in fact there are two separate name spaces, not two hierarchical ones. It's not:
{ use Wx 0.15 qw[:allclasses]; use strict; { package appointments; use Wx qw[:everything]; use base qw(Wx::Dialog); use strict; } } Really, it's like this: package main; # The default; { use Wx 0.15 qw[:allclasses]; use strict; } package appointments; { use Wx qw[:everything]; use base qw(Wx::Dialog); use strict; } Regards Steve