I'm having an issue when loading a file into a REPL which itself loads a macro. The macro is loaded into the REPL, but isn't available for definitions in the initial file.
Consider two files:
;; A.scm
(define-syntax first-arg
(syntax-rules ()
((first-arg fst snd) fst)))
;; B.scm
(load "A.scm")
(define (use-first)
(first-arg 1 2))
If I start a geiser session, then load B.scm through geiser-load-file, the macro first-arg is defined and works correctly from the toplevel, and the procedure use-first is defined, but calling (use-first) gives the exception that first-arg isn't bound. If I use (load "B.scm") from the toplevel directly, everything works.
I'm on GNU/Emacs 30.0.5, Geiser 20231001.1932 and Geiser-Chez 20230707.1334.
If this should be moved to the normal Geiser repo I can do so.
I'm having an issue when loading a file into a REPL which itself `load`s a macro. The macro is loaded into the REPL, but isn't available for definitions in the initial file.
Consider two files:
```scheme
;; A.scm
(define-syntax first-arg
(syntax-rules ()
((first-arg fst snd) fst)))
```
```scheme
;; B.scm
(load "A.scm")
(define (use-first)
(first-arg 1 2))
```
If I start a geiser session, then load `B.scm` through `geiser-load-file`, the macro `first-arg` is defined and works correctly from the toplevel, and the procedure `use-first` is defined, but calling `(use-first)` gives the exception that `first-arg` isn't bound. If I use `(load "B.scm")` from the toplevel directly, everything works.
I'm on GNU/Emacs 30.0.5, Geiser 20231001.1932 and Geiser-Chez 20230707.1334.
If this should be moved to the normal Geiser repo I can do so.