#!/usr/bin/perl use strict; use warnings; use 5.010; # diese Datei wird von extern aufgerufen # mittels require test_reihenfolge.pl # und dann testsub(\%over); sub testsub { my ($over) = @_; if (1==1) { if (1==1) { my @codes; # # genau hier sollen alle Deklarationen unten # in den BEGIN Blöcken stattfinden # foreach my $sub (@codes) { $sub->($over); } { if (1==1) { say "hier findet eine x-beliebige Sache statt"; BEGIN { push @codes,sub { my ($over) = @_; say "Hello1!"; }; } } if (1==1) { say "und hier auch"; BEGIN { push @codes,sub { my ($over) = @_; say "Hello2!"; }; } } # hier kommen noch viele weitere Abschnitte } } } }