Common Lisps dreiteiliges Typsystem: Typen, Klassen und die Wahrheit der Maschine

2025-09-02

Dieser Artikel befasst sich mit den einzigartigen Aspekten des Typsystems von Common Lisp. Es ist weder einfach statisch noch dynamisch, sondern ein ausgeklügeltes Zusammenspiel von Typen, Klassen und der zugrundeliegenden Maschinenimplementierung. Typen steuern die Kompatibilität von Funktionsaufrufen, die Kompatibilität von Strukturfeldern und Compileroptimierungen; Klassen bestimmen die Methodenverteilung und die objektorientierte Vererbung; während die Maschine Implementierungsdetails wie Typ-Tags verbirgt. Anhand von Beispielen zeigt der Artikel, wie Common Lisp die Flüssigkeit dynamischer Sprachen mit Laufzeit- und Kompilierzeit-Typprüfung und Optimierung in Einklang bringt, wodurch letztendlich die Debuggbarkeit und Leistung verbessert werden.

Mehr lesen
Entwicklung

Cross-Compilation von Raylib Lisp-Bindungen und Spielen für Windows von Linux aus

2025-06-30

Dieser Artikel beschreibt den Prozess der Cross-Compilation von C-Code und einem SBCL-Lisp-Programm für Windows von Linux aus, wobei Wine verwendet wird, um ein Windows-SBCL in einem Linux-basierten Emacs auszuführen und .dll-Dateien in das Lisp-Image zu laden, um eine .exe-Ausführdatei zu erstellen. Der Autor beschreibt die Cross-Compilation von C-Code mit mingw-w64-toolchain, die Konfiguration der Raylib-Bibliothek für die Cross-Compilation, um .dll-Dateien zu generieren, die Installation und Verwendung von SBCL unter Wine, die Nutzung von vend für die Abhängigkeitsverwaltung und schließlich die Verwendung von sb-ext:save-lisp-and-die, um die Windows-Ausführdatei zu erstellen.

Mehr lesen
Entwicklung