Mikhail Kryshen writes: > (use-modules (srfi srfi-1) > ((guix ui) #:select (make-user-module))) > > (define (load-manifest file) > ;; Load manifest file in a fresh module with necessary imports. > (let ((module (make-user-module '((guix profiles) (gnu))))) > (save-module-excursion > (lambda _ > (set-current-module module) > (load (canonicalize-path file)))))) Neat example! But what is make-user-module doing, and is it necessary? I checked in the Guix source and found that this procedure uses the procedure make-fresh-user-module, which comes from the (ice-9 boot) module and is not documented in the Guile Reference manual. I stopped investigating when I checked the ice-9 source code and found that it did not contain an immediately helpful docstring or comment. It feels like maybe make-fresh-user-module ought to be documented in "(guile) Module System Reflection", but it isn't. Unfortunately, I don't have time right now to dig deeper. -- Chris