[Allegro] Befehl 'set Rname' (Erg.-Mengen-Benennung)

Thomas Berger ThB at Gymel.com
Mo Dez 17 12:00:28 CET 2012


Lieber Herr Eversberg,

>> Ich habe den Eindruck, daß ein einmal für eine Ergebnismenge vergebener Name
>> innerhalb einer
>> FLEX-Datei (oder gar einer Sitzung?) nicht neu vergeben werden darf.
>>
>> Als Beleg dafür die folgende FLEX-Datei:
>>
>>
>>     // Erg.-Menge aus mit 'k' beginnenden Personen bilden:
>> var "|1 k?"\find
>> set Rergm   // Erg.-Menge wird mit 'ergm' benannt
>> var l\mes
>>     // Erg.-Menge aus mit 'l' beginnenden Personen bilden:
>> var "|1 l?"\find
>> var l\mes
>> set Rergm   // neue Erg.-Menge wird mit 'ergm' benannt
>> find :ergm   // Erg.-Menge des Namens 'ergm' wird gebildet
>> var l\mes
>>
>>
> Also, gesetzt den Fall, das würde klappen, was würde dann aus der ersten Menge?
> Soll die verschwinden? Das wäre ein implizite Funktionsweise, die absichtsvoll
> einzu-
> programmieren wäre. Und zwar hätte das Programm die anderen, vorher gebildeten
> und noch anwesenden Erg.Mengen abzusuchen und zu prüfen, ob eine davon den
> gewünschten Namen trage, und falls ja, diese zu löschen und die anderen einen
> Platz vorzuziehen, dann die betreffende umzutaufen. Denn es können keine
> zwei Dateien oder Variablen denselben Namen tragen, ohne daß irgendwer in
> Verwirrung geriete, das System oder der Nutzer. Und ersteres kommt da nur raus,
> wenn der Programmierer den Fall schon antizipiert hat...

Man koennte es loesen, indem die Ergebnismengen im Buffer Namen und
optionale Aliasse bekommen. Neuvergabe eines Alias loescht diesen dann
als Alias der bisher so benannten Ergebnismenge, die darf aber erhalten
bleiben.

Aber wie ist es denn bisher: Ich habe gerade einmal mit der Demodatenbank
immer abwechselnd Ergebnismengen zu Registereintraegen gebildet und habe
nun:

0 : Lesezeichen
16 : Vorher angezeigte Dateien
75 :  shakespeare, william
15 : |1 shakespeare, william / drama
75 : PER shakespeare, william
75 : R shakespeare, william
75 :  shakespeare, william

(die mit "75" sind alle dieselben, "R" ist ein Gub?)

D.h. auch derzeit duerfen mehrere Ergebnismengen denselben Namen haben,
Problem ist "nur" eines der Aesthetik, dass der Name nicht leer
werden sollte, wenn durch explizite Benennung einer Ergebnismenge
diese Benennung von einer oder mehreren anderen Ergebnismengen entfernt
werden sollte.

viele Gruesse
Thomas Berger
(der auch nichts dagegen hat, wenn die Ergebnismenge in diesem Fall
aus der Liste entfernt wird)




Mehr Informationen über die Mailingliste Allegro