[Allegro] Rücksprung aus Unterprogrammen

Thomas Berger ThB at Gymel.com
Mi Okt 27 11:17:57 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Fischer,

>>> und dann zurückkehrt, indem es die "Sprungmarke" "+-" benutzt
>>> (so alleinstehend ist das nicht recht sinnvoll, aber als
>>> Illustration hoffentlich ausreichend).
>>> Meine Frage war, ob das ein legitimes Vorgehen ist, da im
>>> Handbuch nichts über das Verlassen von Unterprogrammen (außer
>>> dem auch von Ihnen erwähnten Ende des Unterprogramms) steht.

"Ende" ist ja nicht unbedingt raeumlich zu verstehen,
ich optimiere oft Spruenge weg, indem ich mehrere "Marken"
#)X
an guenstige Stellen setze, die Testlogik im gegebenen Beispiel
(TRUE => return) ist fuer eine solche Loesung leider genau
falsch herum...


>>> Herrn Eversbergs Antwort war -kurzgefasst- "Ja".
>>
>> Aber ob dabei nun die Ausgabe des Arbeitstexts (der
>> ermittelten URL) erfolgt oder nicht, ist m.W. nicht definiert.
> 
> Stimmt, das sollte irgendwo klar beschrieben sein.
> In meinem Fall wird der Text ausgegeben.

was ja ein bisschen mit der offiziellen Aussage in Konflikt steht, nur bereits
vollstaendige "Zeilen" wuerden ausgegeben (wozu der aktuelle AT meines
Erachtens nie gehoeren kann): In Unterprogrammen scheint also fuer +- eine
starke Spezialsemantik am Werk, die nicht offengelegt ist)



>> Die letzte Zeile kann uebrigens zu Instabilitaeten fuehren,
>> aus Erfahrung nutze ich daher stets eine Konstruktion
>>
>> #ufk +c y0 dfk b'[ ,;]' b0 Afk
> 
> Die Doppelbedeutung des "=" als Zuweisung und Vergleich hat mich immer
> wieder irritiert, scheint in diesem Fall aber keine Probleme zu bereiten.

... erst dann, wenn viele Datensaetze in Folge in der fraglichen
Kategorie unerwarteterweise mit "," oder ";" am Ende stehen haben...


>> [Ansonsten kann die Sache auch ganz ohne Schleife
>> parametriert werden, das sollte auch effizienter sein]
> 
> Hätten Sie einen Vorschlag? Hintergrund meiner Lösung ist, dass ich an
> dieser Stelle nicht weiß, welches Protokoll da benutzt wird. Fast immer
> http, aber auch https, ftp, sftp sind möglich.

Wenn man sich auf "://" als Erkennungssignal einigt, geht es als

#ufk c"://" E"://" p";" T"[ ,;]" b1
#ufk b"://" e"[ ,;]"


viele Gruesse
Thomas Berger
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iJwEAQECAAYFAkzH7kUACgkQYhMlmJ6W47NzCgQAscqkv4WnaurvNK7xBksPhHIl
VkBzWJmdC7lf3MVPeY2s9P3TBqts8YbiFClslBeg7JAig1uVwPBVoityuomjxVIM
5JTFwuHmtahhFx6ek9T5aFQkSc3+d46pbGXHh24hxm4KbV6o3zSaLzf8xZT3G7Nl
dFXCm4kFu5a/JgkxY/M=
=8qoA
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste Allegro