Geiser in Emacs can somehow already expand Guile macros. Maybe there are
things there, that could be used, expanded (ha!), or built upon?
AFAIK, Geiser is just a REPL. If you are talking about `,expand', then
that's Guile meta-command for expanding a form. Otherwise, I don't know
what you are referring to.
I should have been more specific. Yes, `,expand' is what I am talking about.
Except for changing a macro to output quoted stuff and thinking real hard,
Geiser's `,expand' is the only way I know of, to look at what a macro expands
to. Though a step by step iterative expand could be even better. I believe
Dr.Racket or Racket itself has that feature.
What else comes to my mind is the question, how difficult it would be to make
Guile syntax objects carry source location information like they do in
Racket
They already do. See syntax-source and syntax-sourcev. Are you talking
about other thing?
I was not aware of Guile having anything like that. What I mean is being able to
access and use the file, line, and character numbers of a definition.
Apparently, that is exactly what those functions do, according to
https://www.gnu.org/software/guile/manual/html_node/Syntax-Transformer-Helpers.html#index-syntax_002dsourcev.
Something like what is discussed in
https://www.greghendershott.com/2014/01/using-syntax-loc.html.
Best regards,
Zelphir
--
repositories: https://codeberg.org/ZelphirKaltstahl