sub menu { return int(rand(4)+1); } our $main_menu = [ [ "Second Menu", sub{ $current_menu = $menu2 } ], ]; our $menu2 = [ [ "Return", sub{ $current_menu = $main_menu } ], ]; sub mainloop { do { my $choice = menu(); $m->[$choice]->[1]->(); } while( $choice != 4 ); }