Hi
Wahrscheinlich weil sehr vieles unlogisch ist (siehe local ^ lokal aber dafür my (so quasi-lokal)).
Anders kann man als Außenstehender und Perl-Laie die Diskussion nicht interpretieren.
Perl ist nicht unlogisch sondern bestenfalls überfrachtet, weil es alles können will und die historische Terminologie nicht immer aufwärtskompatibel ist. ("local" hieße zb besser "save")
Also man merke.
1. Private Variablen werden mit "my" deklariert.
2. Ansonsten sind es öffentliche Packagevariablen, und die sollten mit "our" deklariert werden.
3. "local" betrifft nur das Laufzeitverhalten von Packagevariablen und sollte nur in begründeten Einzelfällen benutzt werden.
4. Der Gültigkeitsbereich aller Deklarationen hängt vom Blockscope ab.
5. Mit anderen Worten: Wer zu faul ist mit {} zu Klammern und My, Our und Package bunt mischt braucht sich, LOGISCHERWEISE, nicht zu wundern, wenns unübersichtlich wird.
Wenn also jemand meint Javascript ist logischer, dann sollte er auch keine Packagevariablen nutzen, denn mit dem privaten "my" lässt sich das Verhalten von JS komplett abbilden.
Bye
Kurt