[Allegro] Differenzen. Untersuchung Teil 2
Bernhard Eversberg
ev at biblio.tu-bs.de
Mi Apr 1 12:25:04 CEST 2009
Thomas Berger schrieb:
>
> * gebe ich bei acon nicht staendig "find *new" vor den
> find-Befehlen, bekomme ich
> EXCEPTION-Error (memory-access) in program "acon.exe"
> [Das Beduerfnis nach "find *new" laesst schlimmes Ahnen im
> Bezug auf das Aufbewahren von Suchergbnissen zwecks spaeterem
> Zugriff]
Bitte mal ein Beispiel für einen Job, wo das nötig ist.
Mir gelingt der Nachvollzug nicht.
>
> * acon kennt nicht die Moeglichkeit, hinter einem "if"
> mehrere Kommandos mit "; " zu verketten.
Desgleichen. Es sollte klappen und tut das bei meinen Tests auch.
>
> * acon kennt MB's auf der iV mittels
> var (...) nicht, wie etwa in folgender Konstruktion:
>
> if Artic var (b"¬" b"¬" f"' ")
Auch das stimmt nicht. Klappen täte dies nur, wenn die
Nichtsortierzeichen wirklich da stehen. Sonst B statt b,
aber der Artikel bleibt dann erhalten, wenn es keine
Nichtsortierzeichen gibt.
>
> * Die unterschiedliche Semantik von "write" ohne Argument
> faellt unangenehm auf:
> Diagnostische Ausgabe in a99 etwa erfordert unbedingt eine
> Konstruktion mit "var":
> var "Processing begins" n; show IV
> fuer acon kann ich aber nicht "show IV" durch "write"
> ersetzen, sondern habe die Wahl zwischen
> var '"Processing begins" n'; write
> und
> write "Processing begins" n
Nein, Sie können schreiben
var "Processing begins" ...
ins #uxy
write #uxy n
> Zudem scheint write cstring bei "acon" die iV zu zerstoeren.
>
Der Inhalt wird durch den interpretierten Inhalt ersetzt, also
statt B steht dann da der Datenbankname.
>
> [Gibt es eine Anwendung, die das unuebliche Verhalten des
> "nackten" write unter acon/avanti ausnutzt?]
Es ist nicht unüblich, sondern ist bei a99 ganz genauso.
>
> (Mein Ziel ist, dass der Flex in seiner Endfassung immer
> noch sowohl fuer a99 als auch acon funktioniert, die Anzahl
> der Stellen mit "if" und Auswertung des Cstring "m" daher
> moeglichst gering sein sollte)
Unser Ziel ist, bestehende Diskrepanzen weiter abzubauen.
>
> * Es ist in a99 sehr hilfreich, die "neuen" Dollar-Variablen zu
> nutzen: Erstens weiss man dabei, dass einem die gerade aktiven
> Paramterdateien nicht in die Quere kommen koennen, und zweitens
> sind "sprechende" Namen doch sehr hilfreich, sofern man einmal
> mehr als drei oder vier Variablen benoetigt. Umso aergerlicher,
> dass acon sie nicht kennt. Muss es wirklich eine MFC-Klasse sein,
> mit der a99 an dieser Stelle den Namensraum verwaltet oder gaebe
> es nicht auch andere Loesungen?
Mag sein, es fehlte bisher aber die Zeit, eine zu suchen.
>
>
> * acon erzeugt bei write "string" n auch unter Win32 Zeilenenden
> nach Unix-Konvention, also ^J statt ^M^J.
>
Das läßt sich richten.
B.E.
Mehr Informationen über die Mailingliste Allegro