$ csi -s loader.scm # not using include-with-prelude Hello, loaded here Hello, loaded here $ csi -s loader.scm # using include-with-prelude Hello, loaded here Error: unbound variable: printer Call history: [loaded] (##core#let ((printer51 (##sys#get-keyword (##core#quote #:printer) rest56))) (##core#let () (includ... [loaded] (##core#begin (##core#let () (include-relative52 "loaded.scm"))) [loaded] (##core#let () (include-relative52 "loaded.scm")) [loaded] (##core#begin (##core#include "loaded.scm" "loader.scm" ())) [loaded] (##core#include "loaded.scm" "loader.scm" ()) [loaded] (##core#begin (loader-printer "loaded here") (printer "loaded here")) loaded.scm:1 [loaded] (loader-printer "loaded here") loaded.scm:2 [loaded] (printer "loaded here") [loaded] (##sys#get-keyword (##core#quote #:printer) rest56) [loaded] (##core#quote #:printer) loader.scm:13 (loaded #:printer loader-printer) loader.scm:13 (loaded #:printer loader-printer) [loaded] (##sys#get-keyword (##core#quote #:printer) rest56) loaded.scm:1 [loaded] (loader-printer "loaded here") loader.scm:2 [loader-printer] (print "Hello, " s) loaded.scm:2 [loaded] (printer "loaded here") <--