[Allegro] Ersetzung

Thomas Berger ThB at Gymel.com
Do Jun 12 09:21:20 CEST 2014


Lieber Herr Eversberg, liebe Liste,


Am 12.06.2014 08:58, schrieb Bernhard Eversberg:
> Am 11.06.2014 15:58, schrieb Thomas Berger:
>> ...
>> diese konstruierte Parameterdatei wuerde ihr Verhalten aendern,
>> wenn es zu dieser Aenderung kommt. Vielleicht ...
>> ...
>> Oder war die Frage, wie - unterstellt das sie derzeit das
>> gewuenschte tut - sie umzuprogrammieren waere, damit sie
>> hinterher dasselbe Resultat liefert?
>>
> Ja, genau das. Denn nichts anderes war der Grund für die
> in Rede stehnende Besonderheit.

gegeben also eine lokale Ersetzung ohne dass der Arbeitstext
expliziten Umcodierungen unterworfen wird:

#kkf ,"_ _XYZ_"

Die ganz allgemeine Loesung ist nun wie folgt (bei einem k4-
Kategoriensystem, und unter der Voraussetzung dass die
Anwendervariable #uxx genutzt werden darf):


#kkf Z #zz 0            % fuer eventuelle relative Spruenge
#nr dxx Z #zz 0         % fuer eventuelles Vorab-Initiatlisieren
#kkf y0 e3 p"|" Axx #zz 0
#kkf y0 b3 ,"_ _XYZ_" Axx #zz 0
#uxx dxx b"|"

Das wirkt vielleicht etwas betulich, aber ohne Kenntnis der
konkreten p-Tabelle ("Punkt"-Umcodierungen dabei?) sollte
man nicht davon ausgehen, mit "y1" dasselbe Ergebnis zu
bekommen wie ganz ohne y-Befehle. "#zz 0" kann auch entfallen,
wenn der ke-Parameter ohnehin leer gesetzt ist.

Handelt es sich bei #kkf um die Iterator-Pseudokategorien #u01/#u02,
so darf auf sie natuerlich nur genau einmal zugegriffen werden,
dafuer ist dann vorher noch einmal in eine zusaetzliche
Anwendervariable umzukopieren. In der Praxis ist es oft hilfreich,
ein Unterprogramm einzusetzen, das kann dann als erstes
#t{s4}
und zum Schluss
#t{s1}
sagen - dadurch muss man beim Arbeiten mit Anwendervariablen
nicht mehr darauf achten, dass der Arbeitstext die Tendenz
hat, "vorne immer laenger" zu werden...


viele Gruesse
Thomas Berger



Mehr Informationen über die Mailingliste Allegro