[Allegro] globales löschen eines subfeldes: wie?
Bernhard Eversberg
ev at biblio.tu-bs.de
Di Jan 28 09:26:05 CET 2014
Am 27.01.2014 16:24, schrieb Fischer, Thomas:
>
>> Ich halte das fuer vertretbar, weil "$" als Waehrungszeichen in
>> ueberschaubar wenigen Feldern vorkommt
>> (und dort eher nicht mit b/e extrahiert wird?),..
>
> da möchte ich nur (aus leidvoller Erfahrung) darauf hinweisen, dass mit $...$ Formeln in TeX markiert werden.
An dieser Problematik ändert sich durch die Neuerung nichts.
Nochmals einiges zur Erhellung:
Wenn in der Parameterzeile
b$a bzw. e$
steht, dann wird das schon beim Einlesen der Parameter (und nicht erst
bei der Abarbeitung) gewandelt in b"²a" bzw. e"²", wenn ² der
eigentliche, in der CFG definierte Unterfeldcode ist; wenn dies
aber der $ ist, wird gewandelt in b"$a" bzw. e"$" . Also genau so,
wie man es vordem zu schreiben hatte.
Anders gesagt, intern (nach dem Einlesen und zum Zeitpunkt des
Abarbeitens) sehen die neuen Parameter genauso aus wie die alten.
Noch anders gesagt: Die neuen Schreibweisen sind eine Erleichterung
für das Erstellen und Pflegen der Parameter, mehr nicht!
Und für Programmierer noch klipp und klar zum internen Procedere:
Die Änderungen sind nur in exet2.cpp (bzw. exet2.c für atools),
wo das *Einlesen* sich abspielt, nicht in exet.cpp (bzw. exet.c), wo
die *Abarbeitung* stattfindet. Nach dem stattgefundenen Einlesen stehen
die Parameter im internen Bereich zur beliebig häufigen Abarbeitung
bereit, d.h. sie werden nicht für jeden Satz erneut eingelesen.
(Und wenn man noch mehr wissen will:
Beim Einlesen wurden immer schon viele Änderungen vorgenommen, vor
allem um den Text kompakter zu machen: Kommentare entfernen, Befehle
auf ein-Byte-Codes reduzieren, Feldnummern auf Zahlen, u.a. Erst diese
kompaktierten Parameter werden dann abgearbeitet. Das Parametersystem
ist somit ein Mittelding, könnte man auch sagen, zwischen Compiler
und Interpreter.)
B.E.
Mehr Informationen über die Mailingliste Allegro