my $window = for_obj(Gtk::Window->new("toplevel"), sub { $_->signal_connect(delete => sub { Gtk->exit(0) }); $_->set_title("Test"); $_->border_width(15); $_->add(for_obj(Gtk::Button->new("Quit") ,sub { $_->signal_connect(clicked => sub { Gtk->exit(0) }); $_->show; $_ }); $_->show; }); #### my $window = do { local $_ = Gtk::Window->new('toplevel'); $_->signal_connect(delete => sub { Gtk->exit(0) }); $_->set_title('Test'); $_->border_width(15); $_->add( do { local $_ = Gtk::Button->new('Quit'); $_->signal_connect(clicked => sub { Gtk->exit(0) }); $_->show; $_; } ); $_->show; $_; };