Struppi meinte, dass Du die Funktion auch nach ihrem Aufruf notieren kannst - abgesehen von den Variablendeklarationen, das Thema ist denke ich klar geworden. Im Übrigen sind Konstrukte der Art
... dann soll er es doch bitte auch so schreiben.
Oh Mann, du fragst nach der Funktionsdeklaration mischt diese aber mit globalen Variabeln. Genau das habe ich auch geschrieben, wenn du dir jedesmal nur einen Satz rauspickst, den zusammenhang auseinanderreißt, dann macht das ja alles keinen Sinn.
In Deinem Beispiel ist $v1 scriptglobal, darauf wollte Struppi hinaus.
Auch Du verwendest einen Begriff, den ich in der von Euch empfohlenen Perl-Doku nie gelesen habe.
Das hat auch nichts mit Perl zu tun. Eine globale Variabel ist eine die mehrere Gültigkeitsbereiche überschreitet, da es in Perl mehrere Arten Gültigkeitsbereiche gibt musst du einfach das eine mit dem anderen kombinieren.
Eine my-Variable, ist dann in dem Block, in dem sie definiert wurde, möglicherweise blockglobal?
Nein ein Block wäre nur ein Bereich der mit {} eingeklammert ist, ein Gültigkeitsbereich ist aber auch eine Datei.
Und eine package Variable, die im kompletten Programm gültig ist, nicht aber in einem anderen Programm ist dann programmlokal?
Nein, eine package Variabel ist immer global ansprechbar, du musst sie nur Qualifiziert mit dem package Namen ansprechen. Mittlerweile sollten die verschiedenen Gültigkeitsbereiche klar sein.
Ich habe den thread von Connie verfolgt und da lief es ab einem gewissen Zeitpunkt ähnlich wie jetzt. Wenn etwas unklar formuliert wurde, und der /die Connie(?) darauf hinwies, dann kam die Verteidigung und der Hinweis "er meinte". Mir wären Tatsachen lieber als Meinungen (sorry aber ich bin Mathematiker und mag klare Aussagen/Definitionen. Daher auch meine Bedenken gegen Perl).
Ich versteh nicht wo du unklare Aussagen findest, der Thread und die Hinweise an Connie sind klar und deutlich, es gab am Anfang ein paar unklarheiten vor allem im zusammenhang mit our, ansonsten sind die Erklärungen deutlich.
Beispiel aus dem thread von Connie:
Meine Aussage<Connie>:
File kann doch auch genau ein package enthalten.
Deine Antwort<Struppi>:
nein, file ist ein file in dem durchaus mehrere packages sein können.
<Connie>Wieso das "nein" in Deiner Aussage? Habe ich gesagt muss?
Wo du jetzt unklarheiten siehst ist mir unklar?
Connie macht hier genau das gleiche wie du, er pickt sich einen Satz heraus und läßt die Erklärungen der Aussage völlig aussen vor. Hier ging es darum, dass eine mit my deklarierte Variabeln in einer Datei über alle packages global ist, aber nur in der Datei zu Verfügung steht. Es ging nicht um package, sondern um my, deshalb mein Nein.
Struppi.