Apple: Swift bekommt Open-Source-Bibliothek für Systemaufrufe

Apple hat die Swift-System-Bibliothek(öffnet im neuen Fenster) seiner Programmiersprache Swift als Open Source veröffentlicht(öffnet im neuen Fenster) und um die Unterstützung für Linux erweitert. Erstmals angekündigt hatte das Entwicklungsteam die Bibliothek im Juni für die eigenen Systeme. Ziel des Projekts sind eigenen Angaben zufolge idiomatische Schnittstellen für Systemaufrufe bereitzustellen. Die Bibliothek soll künftig als einheitliches Zuhause für eben dieses Arbeiten dienen.
Swift ermöglicht es natürlich auch jetzt schon, die Systemaufrufe der unterstützten Betriebssysteme zu verwenden. Wie das Team schreibt, seien diese aber meist in C geschrieben und existierten seit Jahrzehnten. Die Nutzung dieser Aufrufe aus Swift heraus sei jedoch "fehleranfällig und unhandlich" . In der Ankündigung zeigt das Team dies beispielhaft an der Nutzung des Aufrufs open auf unix-artigen Systemen, vor allem mit Blick auf das Typsystem.
So seien File-Deskriptoren, Optionen, Kommandos, Fehler und andere Werte alles nur Zahlwerte vom Typ Int32. Darüber hinaus müssten Fehlerwerte nicht nur überprüft, sondern auch mit globalen Variablen verglichen werden. Und der Aufruf könne durch ein Signal unterbrochen werden, was wiederum durch eine Schleife um den eigentlichen Aufruf überprüft werden müsse. Derartige semantische Regeln ergäben sich aber nicht aus der Signatur(öffnet im neuen Fenster) der API, was eine korrekte Nutzung erschwere.
APIs für jedes System
Eben dieses und weitere Probleme soll Swift-System durch eine Abstraktion der Systemaufrufe lösen. Das Team setzt dabei auf das Schlagwort Multiplatform statt Crossplatform, wie es schreibt. Das heißt, die Bibliothek bietet keine einheitliche API für alle Systeme, sondern angepasste Schnittstellen für jedes einzelne System. Diese sollen dabei jeweils sehr nah an dem darunter liegenden System ausgerichtet werden.
Derzeit unterstützt das Projekt nur eine kleine Anzahl von Aufrufen, was das Team aber noch ausbauen will. Hinzukommen soll neben der Unterstützung für Apples Betriebssysteme und Linux künftig auch Windows-Support. Erst vor rund einer Woche hatte das Entwicklungsteam erstmals offiziell Werkzeuge zum Testen des Windows-Supports von Swift bereitgestellt.



