Component Pascal ist eine 1994 bei der ETH-Zürich-Ausgründung Oberon microsystems entstandene objektorientierte Variante der Wirth-Sprachfamilie, ursprünglich unter dem Namen Oberon/L entwickelt. Sie ist eine Erweiterung von Oberon-2 um Komponenten- und GUI-Fähigkeiten. Das wichtigste Werkzeug ist die IDE BlackBox Component Builder (Open Source): ein integriertes System zum Editieren, Kompilieren, Ausführen und Debuggen von Component-Pascal-Programmen, in dem jedes Modul eine Einheit aus Kompilierung und Ausführung ist.
Grundgerüst
MODULE Hallo;
IMPORT StdLog;
PROCEDURE Go*;
BEGIN
StdLog.String("Hallo, Welt!"); StdLog.Ln
END Go;
END Hallo.
Wichtige Sprachmittel
- MODULE / IMPORT: Module sind Kompilierungs- und Ausführungseinheiten; exportierte Bezeichner enden mit * (z.B. PROCEDURE Go*).
- PROCEDURE: Prozeduren, auch typ-gebunden (Methoden) mit Receiver — z.B. PROCEDURE (c: Controller) Handle*.
- RECORD-Typerweiterung: objektorientierte Vererbung durch erweiterbare Records.
- POINTER: Referenztypen für dynamische Datenstrukturen.
- Arrays, Sets, CASE, IF…ELSIF: wie in der Wirth-Familie üblich.
Werkzeuge
DevCP.exe # BlackBox-Hauptprogramm (IDE)
DevCtl.exe # Kommandozeilen-/Scripting-Steuerung (Control-Log)
DevTool.exe # Tool-Steuerung für CI-Skripte
DevComp.exe # Compiler-Aufruf aus Skripten
obc # OBNC/BlackBox-Kommandozeilen-Compiler (optional)
Praxis-Tipps
- BlackBox ist stark komponentenorientiert: GUIs, Dokumente und Hosts werden als wiederverwendbare Module entwickelt, die zur Laufzeit geladen werden.
- Der Compiler ist sehr schnell; Module werden erst bei Bedarf in den Speicher geladen (lazy loading).
- Die Sprache gehört zur Wirth-Linie Pascal → Modula-2 → Oberon → Component Pascal und ist damit eine Brücke zwischen klassischen Systemsprachen und Komponenten-Frameworks.
Verwandte Grundlagen: Oberon-Befehle, Modula-2-Befehle, Modula-3-Befehle und Pascal-Befehle.