Trying to import srfi-1's unfold, but getting `hoot/library-group.scm:1097:27: unbound top-level #("game.scm" 135 27) unfold`

If you go to this branch:

https://codeberg.org/kakafarm-lisp-game-jam/shmendric-melabane/src/branch/why-cant-i-import-srfi-1-unfold

(here the repository worktree directory is named 2025-05-09-lisp-game-jam)

and run the commands as follows, you get this weird error:

yuval@computor:~/foo/2025-05-09-lisp-game-jam$ ./shell
yuval@computor ~/foo/2025-05-09-lisp-game-jam [env]$ make
rm -vf target/reflect.js target/reflect.wasm target/wtf8.wasm
guild compile-wasm -L modules --bundle -o target/game.wasm game.scm
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /gnu/store/w2grdcjmwg3likhg9as0k870z0w1lf60-profile/bin/guild
;;; WARNING: compilation of /gnu/store/w2grdcjmwg3likhg9as0k870z0w1lf60-profile/bin/guild failed:
;;; failed to create path for auto-compiled file "/gnu/store/w2grdcjmwg3likhg9as0k870z0w1lf60-profile/bin/guild"
Backtrace:
In hoot/library-group.scm:
  1035:17 19 (foldts #<tree-il (seq (define input-values-east (lambd?>)
  1035:17 18 (foldts #<tree-il (seq (define set-input-values-pointer?>)
  1035:17 17 (foldts #<tree-il (seq (define input-values-pointer-loc?>)
  1035:17 16 (foldts #<tree-il (seq (define set-input-values-pointer?>)
  1035:17 15 (foldts #<tree-il (seq (define input-values-pointer-pre?>)
  1035:17 14 (foldts #<tree-il (seq (define make-input-values (let (?>)
  1035:17 13 (foldts #<tree-il (seq (define *previous-input* (call (?>)
  1035:17 12 (foldts #<tree-il (seq (define *current-input* (call (t?>)
  1035:17 11 (foldts #<tree-il (seq (define *player* (const #f)) (se?>)
  1035:17 10 (foldts #<tree-il (seq (define *enemies* (const ())) (s?>)
  1035:17  9 (foldts #<tree-il (seq (define make-new-game (lambda ((?>)
  1035:17  8 (foldts #<tree-il (define make-new-game (lambda ((name ?>)
  1035:17  7 (foldts #<tree-il (lambda ((name . make-new-game)) (lam?>)
  1035:17  6 (foldts #<tree-il (lambda-case ((() #f #f #f () ()) (se?>)
  1035:17  5 (foldts #<tree-il (seq (set! (toplevel *player*) (call ?>)
  1035:17  4 (foldts #<tree-il (set! (toplevel *enemies*) (call (top?>)
  1035:17  3 (foldts #<tree-il (call (toplevel length) (call (toplev?>)
  1035:17  2 (fold-values #<procedure foldts (tree)> (#<tree-il (ca?>))
  1035:17  1 (foldts #<tree-il (call (toplevel unfold) (lambda () (l?>)
  1097:27  0 (_ _)

hoot/library-group.scm:1097:27: unbound top-level #("game.scm" 135 27) unfold
make: *** [Makefile:12: target/game.wasm] Error 1

I cannot import unfold from (srfi srfi-1). I have to copy and paste its GNU Guile implementation manually, and that is not good, I think.

What should I do to fix it?

Guile’s SRFI-1 is not yet compatible with Hoot, so Hoot has a very reduced subset of SRFI-1 at the moment. Copying the procedures you need into your project is the best short term option.