[Allegro] Vb.240: OpenSource, wichige Etappe: acon
Bernhard Eversberg
ev at biblio.tu-bs.de
Fr Jul 22 09:42:21 CEST 2011
Verlautbarung 240 der Entw.Abt. 2011-07-22
-------------------------------
Konsolprogramm acon jetzt OpenSource
------------------------------------
Die Klassenbibliothek als Grundlage für alles war schon freigegeben worden,
und damit zusammen ein kleines Demo-Programm osdp, mit dem man die
Anwendung der Klassen in cpp-Programmen sehen und ausprobieren kann.
(Siehe Vb.239)
Nach demselben Schema ist acon angelegt, nur wesentlich umfang-
und funktionsreicher. Weil acon das Arbeitspferd ist für alle Offline-
Prozesse UND für alls Web-Anbindungen, ist die nunmehrige Freigabe
der Quellen vielleicht die wichtigste Etappe auf dem Weg zum kompletten
OpenSource-System:
http://svn.allegro-c.de/svn/acon
Das Repositorium ist neu angelegt, also frei von allem historischen
Ballast, den nachzuvollziehen jetzt, nach gründlicher Überarbeitung,
kaum noch was bringen könnte und vom Zeitbedarf her unrealistisch wäre.
Der Einsteiger wird sich zunächst mit Hilfe von 2 Dateien orientieren
wollen:
ABLAUF : skizziert, wie eine Jobverarbeitung abläuft
README : listet die Quelldateien auf und wozu sie da sind.
Zum Kompilieren gilt dasselbe GNU-Verfahren, wie es im README von osdp
beschrieben ist.
Der wichtigste Teil von acon ist in avjob.cpp zu finden: der FLEX-
Interpreter, konzentriert in der Funktion DoJob().
Fast alle FLEX-Funktionen werden dort unmittelbar abgehandelt, in einer
langen switch-Liste. Nur die sehr umfangreichen, wie find, qrix,
get Ihttp..., und srx, sind in eigene Dateien ausgelagert, einige andere
haben eigene Funktionen innerhalb avjob.cpp.
Das Erkennen der Befehlswörter, wichtiger Teil des Parsing, erfolgt
in avaddit.cpp, die Konstanten für die internen Befehlsnummern stehen
in defines.h.
Dieser Zustand ist gewiß immer noch kritik- und verbesserungswürdig,
aber soll ja nicht als letztgültiger hingestellt sein. Er entstand aus
vielen älteren Zuständen und ging durch etliche Revisionen, und so ein
langer Prozeß führt nicht zwangsläufig zu optimaler Klarheit, will
man abrupte Brüche der Kontinuität vermeiden. Auch ist zeitlich gar nicht
alles zu schaffen, was man sich als wünschenswert vorstellen mag.
Genug der Worte. Der Zugriff ist ab sofort freigegeben für den Nutzer
ac11, den ganz normalen Lizenzinhaber.
B.Eversberg
Mehr Informationen über die Mailingliste Allegro