Guix' G-Ausdrücke: Einbettung von Low-Level-Code in High-Level-Code
2025-08-03
Guix verwendet Scheme sowohl für High-Level-Aktionen (wie das Definieren von Paketen) als auch für Low-Level-Aktionen (wie das Erstellen von Derivaten). Um Low-Level-Code in High-Level-Code einzubetten, verwendet es G-Ausdrücke. Beispielsweise übergibt in `start` von `wesnoth-shepherd-service` `#~(...)` Low-Level-Code, während `#$(...)` High-Level-Code maskiert, der vom Compiler in Low-Level-Code umgewandelt wird. Die Funktion `make-forkexec-constructor` erstellt und führt Kindprozesse aus und bietet Funktionen wie das Setzen von Benutzer, Gruppe, Umask und Umgebungsvariablen.
Entwicklung
G-Ausdrücke