PS: Sieh auch
perldoc perlsub
A "local" just gives temporary values to global (meaning package) variables. It does not create a local variable. This is known as dynamic scoping. Lexical scoping is done with "my", which works more like C's auto declarations.
Btw.,
perldoc
ist eine Sache die ich an Perl ganz besonders schätze. Gibt es das in Haskill auch?
Haskell übrigens. Am nächsten dran kommt dem wohl Hackage. Dort kann man die Dokumentation sowohl der Standard-Library als auch der meisten Community-Packages finden. Der Sprachkern von Haskell ist historisch bedingt hauptsächlich in wissenschaftlichen Arbeiten dokumentiert.