AW: [Allegro] Trick 31: FLEXe verschachteln

Thomas Fischer fischer at mail.sub.uni-goettingen.de
Mo Dez 18 11:08:05 CET 2006


Lieber Herr Eversberg,

der Trick kommt mir nützlich vor, leider verstehe ich ihn nicht.
Genauer: ich verstehe die verwendete Flex-Sprache noch nicht ganz, weil ich
einmal wieder die Befehlsbeschreibungen nicht finde. Den include-Befehl habe
ich in meiner Dokumentation (v.26.8) zunächst nicht gefunden, weil er nicht
in der alphabetischen Reihenfolge aufgeführt ist. Muss das so sein?

Schwieriger ist es aber mit der Methode 2. Es wäre nett, wenn Sie noch ein
paar Erklärungen zu den einzelnen Schritten geben könnten.


> 2. Rückaufruf des ersten FLEXes
...
>    zuerst die Variable #urC löschen!
> #urC
> ins #urC     // iV-Inhalt in #urC speichern
> var #urC     // pruefen, ob das mit "jump" anfaengt
> if "jump" var #urC(b"jump ");jump
> ...   // beliebiger Inhalt
> exec zweit.flx first;weiter
> :weiter

1. Was bewirkt
#urC
? Reine Ausgabe eines cstring habe ich nicht gefunden.
Und was heißt hier
>    zuerst die Variable #urC löschen!
?

2.
Meine Vorstellung ist:
ins #urC: iV in #urC schreiben
var #urC: #urC in iV schreiben
(Mir ist das Verhältnis von "interner Variabler" zu dem Allegro-Konzept des
Arbeitstexts nicht ganz klar.)
So naiv interpretiert würde
ins #urC
var #urC
iV in #urC und #urC in iV schreiben.
Wofür ist das gut?
Und was steht eigentlich nach dem insert-Befehl in der iV?

3.
if "jump" var #urC(b"jump ");jump
bewirkt, dass zu <Marke> gesprungen wird, wenn die iV "jump <Marke>"
enthält.
Sollte da sicherheitshalber auf
if "jump "
geprüft werden, weil auch b"jump " benutzt wird?

4.
Was ist
exec zweit.flx first;weiter
für eine Konstruktion? Das sieht aus als würde das "first;weiter" in dem
#urC von zweit.flx ankommen, wieso?

Soweit erst einmal; wenn ich das verstanden habe, habe ich vielleicht noch
weitere Fragen.

Danke für die Hilfe im Voraus!

Mit freundlichen Grüßen
Thomas Fischer 




Mehr Informationen über die Mailingliste Allegro