Vielleicht denkst Du mal darüber nach, dass derjenige, der die Funktion schreibt, nicht selbst auch die Aufrufe der Funktionr ealisiert, sondern dass dies ganz andere tun. Und die übergeben kein undef sondern nichts. Nichts heißt nichts und nicht 0 oder "" oder undef oder sonst was.
und dann ist unless defined $param genau das was du brauchst.
Struppi.