Xbase++
Der Krieg der Betriebssysteme
Es gab einmal eine Zeit, da IBM und Microsoft an einem gemeinsamen Betriebssystem für PCs arbeiteten. Der Name war OS/2 (Operating System /2). Irgendwie gerieten sich die beiden in die Haare, und jeder entwickelte seine Schiene weiter:
- IBM führte OS/2 bis OS/2 Warp fort und stellte es dann ein;
- Microsoft übernahm die Grundideen (und einiges mehr) und entwickelte Windows - zuerst parallel in einer Home- und einer Office-Schiene (Windows 9x und Windows NT)
Das erste Pferd, Xbase/2
Da damals (wie auch heute) immer noch sehr viele Clipper-Anwendungen im Einsatz sind, erschien die Firma Alaska Software auf der Bühne und präsentierte Xbase/2. Die mir vorliegende CD mit Xbase/2 Version 1.2 datiert aus dem Jahr 1999 (zumindest, was die Timestamps der Verzeichnisse angeht). Ziel Betriebssystem war übrigens … OS/2 von IBM.
Auch wenn Xbase/2 heute nicht mehr weiter entwickelt wird, enthalten Dokumentation und Header-Files der heutigen Xbase++ Versionen immer noch Hinweise auf die Abweichungen zwischen Windows und OS/2.
Forking for Windows: Xbase++
Erst im Laufe der Zeit gab es einen Abzweig auch für Windows, der mit dem Abstieg von OS/2 immer mehr an Bedeutung gewann: Xbase++
Und Xbase++ ist auch heute die wichtigste Alternative für die Programmierer, die von Clipper zu Windows wollen.
Kompatibilität und Inkompatibilitäten
Ziel war es, Clipper-Programmierern einen (relativ) schmerzlosen Migrationspfad von DOS nach Windows zu bahnen. Auf diesem Weg gibt es viele Hürden, die mit der anderen Struktur von Windows zu tun hat, und dem Aufkommen deutlicher preiswerterer Netzwerke:
- Multi-User Umgebung
- Multi-Tasking Umgebung
- Datenzugriff über Netzwerke
- Maus-Steuerung
- andere Behandlung von Ereignissen
Die Berücksichtigung dieser Änderungen verlangte einen Paradigmen-Wechsel von den Programmierern, auch wenn es vordergründig so aussah, als wäre eine Migration ohne Schwierigkeiten möglich.
Die Unterschiede sollen anhand einer kleinen Migration des wohl am meisten verbreiteten Clipper-Programms aufgezeigt werden: DBU