[Allegro] var i nach put

Bernhard Eversberg ev at biblio.tu-bs.de
Mi Jan 31 07:57:42 CET 2007


Heinrich Allers schrieb:
> Dieser von Herrn Eversberg genannte Trick, mit 
> 
> prev #\next #
> 
> dem von Herrn Eger verfolgten Ziel näher zu kommen, hat mir die Augen 
> für das interne Geschehen geöffnet; bis dahin ging ich immer davon 
> aus, daß der Befehl put ohne jede Auswirkung auf die Stellung des auf 
> die interne Satzummer zeigenden Zeigers ist.
> 
Es gibt hier gar keinen Zeiger!!! Der aktuelle Satz hat eine interne
Nummer. prev # und next # entnehmen diese Nummer dem aktuellen Satz,
nichts anderes. Und "put" verändert die interne Nummer nicht - es sei
denn, man hat vorher "new" gegeben, dann entsteht eine neue interne
Nummer. Die Allers'sche Schleife funktioniert also auch ohne seine
Vorsichtsmaßnahme mit var i... und find #...

> Anders als alle der in der gestrigen Diskussion sich geäußert 
> habenden Kollegen bin ich der Meinung, daß der Befehl put den Zeiger, 
> der auf eine bestimmte interne Satzummer zeigt, nicht ändern sollte 
> und nicht auf eine neue interne Satznummer zielen lassen darf.  
> 
Das tut er, wie gesagt, nicht.

> Aber wenn sich nun wirklich die Mehrheitsmeinung durchsetzt, daß ein 
> simples put eine neue interne Satznummer aktuell werden lassen soll, 
Das geschieht, wie gesagt, nicht.

> 
> Die Befehlsfolge 
> 
> input 47\put 
> 
> würde dann z.B. dafür sorgen, daß anschließend
> 
> var j\mes
> 
> die Zahl 47 sehen ließe?
> 
Nein, denn der Satz wird nicht in Datei 47 gespeichert, es sei denn,
es handelt sich um einen neuen Satz. Danach hat er dann eine neue
interne Nummer, und von dieser gehen dann prev # und next # aus.

Das EINZIGE Problem liegt darin, daß bei "put" nach vorangehendem
"new" oder "copy" die Variable  i  und  #nr  nicht korrekt sind.
Sie wird statt direkt aus dem Satz aus einer Variablen entnommen, die
zu dem Zeitpunkt, nach dem Speichern mit put, nicht stimmt.
prev # und next # benutzen diese Variable nicht, aber die i-Variable
wird dadurch wieder korrigiert.
Dieses Problem wird V27.2 ausmerzen, sonst nichts.

MfG B.E.






Mehr Informationen über die Mailingliste Allegro